Mail:





Słowniczek Sztucznej Inteligencji





A.I. dla Nie-Techników



•  Część 1 - Podstawy sztucznej inteligencji
•  Część 2 - Dane
•  Część 3 - Uczenie maszynowe
•  Część 4 - Głębokie uczenie
•  Część 5 - Robotic Process Automation
•  Część 6 - Przetwarzanie języka naturalnego (NLP)
•  Część 7 - Roboty fizyczne
•  Część 8 - Wdrażanie sztucznej inteligencji
•  Część 9 - Przyszłość sztucznej inteligencji





Sztuczna inteligencja: podstawy i zastosowania

Część 1: Sztuczna inteligencja i nanotechnologia: superkonwergencja

Część 2: Sztuczna inteligencja w handlu elektronicznym: analiza procesów biznesowych

Część 3: ABC ery cyfrowej ze szczególnym odniesieniem do sektora bankowego

Część 4: Sztuczna inteligencja w predykcyjnej analizie ubezpieczeń i bankowości

Część 5: Sztuczna inteligencja w robotyce i automatyzacji.

Część 6: Sztuczna inteligencja: nowe podejście w opiece zdrowotnej

Część 7: Sztuczna inteligencja i spersonalizowane leki: Wspólna narracja o postępach w opiece medycznej

Część 8: Nanotechnologia i sztuczna inteligencja w medycynie precyzyjnej w onkologii

Część 9: Zastosowania sztucznej inteligencji w recepturach farmaceutycznych i leków

Część 10: Rola sztucznej inteligencji w diagnozowaniu gruźlicy

Część 11: Zastosowania sztucznej inteligencji w wykrywaniu i leczeniu COVID-19

Część 12: Sztuczna inteligencja oparta na Internecie rzeczy przy użyciu platformy Microsoft Azure

Część 13: Równoważenie obciążenia w bezprzewodowej sieci heterogenicznej za pomocą sztucznej inteligencji

Część 14: Zastosowania technik sztucznej inteligencji w systemach elektroenergetycznych

Część 15: Wpływ sztucznej inteligencji w sektorze lotniczym i kosmicznym

Część 16: Sztuczna inteligencja do prognozowania pogody

Część 17: Górnictwo molekularne: zastosowania w naukach farmaceutycznych




A.I. … i wszystko jasne




Wprowadzenie do Języka R




Język R … od słów do czynów !!!



 + Kody Źródłowe




A.I.: Jaka jest nasza Przyszłość?

[101 Prostych Pytań]




VIDEO



  Hipoteza Riemanna

 Pogadać z Maszyną 1

 Pogadać z Maszyną 2

 Pogadać z Maszyną 3

 Pogadać z Maszyną 4

 Wywiad z maszyną !

 Co słyszy Sztuczna Inteligencja?

 Komputer Kwantowy

 Świadomość Maszyn

 Sztuczna Inteligencja - Szansa czy Zagrożenie?

 This is AI 1

 This is AI 2 : How machines learn

 This is AI 3 : Learnig for life

 This is AI 4: A synthetic sixth sense




Bogowie Sztucznej Inteligencji






SŁOWNIK TERMINÓW ROBOTYCZNYCH




Anatomia Robota

  • Systemy Sterowania
  • Sprzęt Komputerowy
  • Niezawodność, Bezpieczeństwo i Zgodność
  • Kroki Projektowe: HLD
  • Energia i systemy zasilania
  • Kontrola Energii
  • DSP
  • Komunikacja
  • Silniki i Siłowniki
  • Mechanika



  • Artificial Intelligence




    Jak A.I. zmienia nasz świat




    Mity Sztucznej Inteligencji




    Króka Historia A.I.




    Fundamenty


    • Prolog

    • Wprowadzenie do A.I.

    • Definiowanie roli danych

    • Biorąc pod uwagę alogorytmy

    • Pionierski ,specjalistyczny sprzęt

    • Zastosowanie AI w aplikacjach komputerowych

    • Automatyzacja typowych procesów

    • Zastosowanie AI w medycynie

    • A.I. a poprawa interakcji

    • Analiza danych przez A.I.

    • Wykorzystanie machine learning

    • Poprawa A.I. (…)

    • Rozwój robotów

    • Latanie dronami

    • Samochód napędzany A.I.

    • Zroumieć aplikacje bez szans

    • AI w Kosmosie

    • Nowe zawody w erze A.I.

    •  X zawodów dla A.I.(?)

    • Wkład A.I. w społeczeństwo

    • Jak zawiodła A.I.




    "Ocieplamy" Fundamenty


    • Intuicyjna koncepcja sztucznej inteligencji

    • Podstawy wyszukiwania

    • Inteligentne wyszukiwanie

    • Algorytmy Ewolucyjne

    • Zaawansowane podejście ewolucyjne

    • Inteligencja Roju: Mrówki

    • Inteligencja roju: Cząstki

    • Uczenie maszynowe

    • Sztuczne sieci neuronowe

    •  Uczenie się ze wzmocnieniem za pomocą Q-Learning




    XVI Filarów Świątyni ArtInt′a


    • Korzenie i Zakres

    • Reprezentacja i wyszukiwanie

    • Struktury i strategie wyszukiwania

    • Wyszukiwanie Heurystyczne

    • Metody Stochastyczne

    • Budowanie algorytmów sterowania

    • Reprezentacja Wiedzy

    • Silna metoda rozwiązywanie problemów

    • Rozumowanie w niepewnych sytuacjach

    •  Uczenie maszynowe : oparte na symbolach

    • Uczenie maszynowe : koneksjonizm

    • Uczenie maszynowe : genetyczne i awaryjne

    • Uczenie maszynowe : probabilistyczne

    • Automatyczne wnioskowanie

    • Rozumienie języka naturalnego

    • Sztuczna Inteligencja jako pytanie empiryczne




    Sztuczna Inteligencja i Big Data

    Sekcja 1 : Big Data i systemy sztucznej inteligencji

    Sekcja 2 : Ontologia dla dużych zbiorów danych

    Sekcja 3: Uczenie się z dużych zbiorów danych

    Sekcja 4:Sieci neuronowe dla dużych zbiorów danych

    Sekcja 5: Deep Big Data Analytics

    Sekcja 6: Przetwarzanie języka naturalnego

    Sekcja 7: Systemy rozmyte

    Sekcja 8: Programowanie genetyczne

    Sekcja 9: Analiza roju

    Sekcja 10: Uczenie się przez wzmocnienie

    Sekcja 11: Cyberbezpieczeństwo

    Sekcja 12: Obliczenia poznawcze












    Wczoraj , Dziś … Jutro














    Odwiedzin: 14231
    Dzisiaj: 3
    On-line: 2
    Strona istnieje: 932 dni
    Ładowanie: 0.551 sek


    [ 3479 ]



    Sztuczna Inteligencja z Językiem NetLogo



    LINK



    Sztuczna Inteligencja : Gry (LXXIII)




    •  Wprowadzenie

    •  Gry AI

    •  Ruch


    ZNALEZIENIE DROGI

    Postacie w grze zwykle muszą poruszać się po swoim poziomie. Czasami ten ruch jest ustalony na stałe przez deweloperów, na przykład trasa patrolowa, którą strażnik może podążać na ślepo lub mały ogrodzony obszar, po którym pies może losowo wędrować. Trasy stałe są proste do wdrożenia, ale można je łatwo oszukać, jeśli obiekt zostanie pochłonięty. Swobodnie wędrowne postacie mogą wydawać się bezcelowe i łatwo utknąć. Bardziej złożone postacie nie wiedzą z góry, gdzie będą musiały się przenieść. Jednostka w grze strategicznej czasu rzeczywistego może w dowolnym momencie zostać skierowana przez gracza do dowolnego punktu na mapie, patrolujący strażnik w grze stealth może być zmuszony do przemieszczenia się do najbliższego punktu alarmowego, aby wezwać posiłki, oraz w grze platformowej może wymagać od przeciwników ścigania gracza przez przepaść przy użyciu dostępnych platform. Dla każdej z tych postaci sztuczna inteligencja musi być w stanie obliczyć odpowiednią trasę przez poziom gry, aby dostać się z miejsca, w którym jest teraz, do celu. Chcielibyśmy, aby trasa była rozsądna i jak najkrótsza lub jak najszybsza (nie wygląda to elegancko, jeśli twoja postać przechodzi z kuchni do salonu przez strych). Jest to odnajdywanie ścieżek, czasami nazywane planowaniem ścieżki, które występuje wszędzie w sztucznej inteligencji w grze. W naszym modelu gry AI



    odnajdywanie ścieżek znajduje się na granicy między podejmowaniem decyzji a ruchem. Często jest używany po prostu do ustalenia, dokąd się przenieść, aby osiągnąć cel; o celu decyduje inna sztuczna inteligencja, a tropiciel po prostu wymyśla, jak się tam dostać. Aby to osiągnąć, można go wbudować w system kontroli ruchu, aby był wywoływany tylko wtedy, gdy jest to konieczne do zaplanowania trasy. Zostało to omówione w Części 3 dotyczącym algorytmów ruchu. Ale odnajdywanie ścieżek można również umieścić na siedzeniu kierowcy, podejmując decyzje o tym, gdzie się przenieść, a także jak się tam dostać. Przyjrzę się odmianie odnajdywania ścieżek, odnajdywania ścieżek otwartego celu, które można wykorzystać do opracowania zarówno ścieżki, jak i miejsca docelowego. Zdecydowana większość gier wykorzystuje rozwiązania pathfindingowe oparte na algorytmie zwanym A*. Chociaż jest wydajny i łatwy do wdrożenia, A* nie może pracować bezpośrednio z danymi z poziomu gry. Wymaga to, aby poziom gry był reprezentowany w określonej strukturze danych: ukierunkowanym nieujemnym wykresie ważonym. W tym rozdziale omówiono strukturę danych grafu, a następnie przyjrzymy się starszemu bratu algorytmu A*, algorytmowi Dijkstry. Chociaż Dijkstra jest częściej używana w podejmowaniu decyzji taktycznych niż w odnajdywaniu ścieżek, jest to prostsza wersja A*, więc omówimy ją tutaj na drodze do pełnego algorytmu A*.Ponieważ struktura danych wykresu nie jest sposobem, w jaki większość gier w naturalny sposób reprezentowałaby dane poziomu, przyjrzymy się szczegółowo problemom z reprezentacją wiedzy związanym z przekształceniem geometrii poziomu w dane do odnajdywania ścieżek. Na koniec przyjrzymy się kilku dziesiątkom przydatnych odmian podstawowego algorytmu A*


    WYKRES ZNAJDOWANIA DROGI

    Ani A*, ani Dijkstra (ani ich wiele odmian) nie mogą pracować bezpośrednio na geometrii, która tworzy poziom gry. Opierają się na uproszczonej wersji poziomu przedstawionej w postaci wykresu. Jeśli uproszczenie zostanie wykonane dobrze, plan zwrócony przez pathfindera przyda się po przetłumaczeniu z powrotem na warunki gry. Z drugiej strony w uproszczeniu odrzucamy informacje, a to może być informacja istotna. Słabe uproszczenie może oznaczać, że ostateczna ścieżka nie jest tak dobra. Algorytmy wyszukiwania ścieżek wykorzystują rodzaj grafu zwanego skierowanym nieujemnym grafem ważonym. Zajmę się opisem pełnego grafu odnajdywania ścieżki za pomocą prostszych struktur grafów.

    WYKRESY

    Wykres jest strukturą matematyczną często przedstawianą w formie diagramu. Nie ma to nic wspólnego z bardziej powszechnym użyciem słowa "wykres" w znaczeniu dowolnego diagramu, takiego jak wykres kołowy lub histogram. Wykres składa się z dwóch różnych typów elementów: węzły są często rysowane jako punkty lub okręgi na diagramie wykresu, podczas gdy połączenia łączą węzły za pomocą linii (jak zobaczymy poniżej, oba te elementy są nazywane różnymi nazwami przez różne osoby ). Rysunek



    przedstawia strukturę wykresu. Formalnie graf składa się z zestawu węzłów i zestawu połączeń, gdzie połączenie jest po prostu nieuporządkowaną parą węzłów (węzły na każdym końcu połączenia). W przypadku odnajdywania ścieżek każdy węzeł zwykle reprezentuje region poziomu gry, taki jak pokój, odcinek korytarza, platforma lub mały obszar przestrzeni na zewnątrz. Połączenia pokazują, które lokalizacje są połączone. Jeśli pomieszczenie przylega do korytarza, węzeł reprezentujący pomieszczenie będzie miał połączenie z węzłem reprezentującym korytarz. W ten sposób cały poziom gry jest podzielony na regiony, które są ze sobą połączone. W dalszej części zobaczymy sposób przedstawiania poziomu gry w postaci wykresu, który nie jest zgodny z tym modelem, ale w większości przypadków jest to przyjęte podejście. Aby dostać się z jednego miejsca na poziomie do drugiego, korzystamy z połączeń. Jeśli możemy przejść bezpośrednio z naszego węzła początkowego do węzła docelowego, to nasze zadanie jest proste: używamy połączenia. W przeciwnym razie być może będziemy musieli korzystać z wielu połączeń i podróżować przez węzły pośrednie po drodze. Ścieżka przez wykres składa się z zera lub większej liczby połączeń. Jeśli węzeł początkowy i końcowy są takie same, w ścieżce nie ma połączeń. Jeśli węzły są połączone, potrzebne jest tylko jedno połączenie i tak dalej.


    WYKRESY WAŻONE

    Wykres ważony składa się z węzłów i połączeń, podobnie jak wykres ogólny. Oprócz pary węzłów dla każdego połączenia dodajemy wartość liczbową. W matematycznej teorii grafów nazywa się to wagą, aw grach częściej nazywa się to kosztem (chociaż wykres nadal jest nazywany "wykresem ważonym", a nie "wykresem kosztowym"). Na przykładowym wykresie przedstawionym na rysunku



    widzimy, że każde połączenie jest oznaczone skojarzoną wartością kosztu. Koszty na wykresie odnajdywania ścieżki często reprezentują czas lub odległość. Jeśli węzeł reprezentujący jeden koniec korytarza znajduje się w dużej odległości od węzła reprezentującego drugi, koszt połączenia będzie duży. Podobnie poruszanie się między dwoma obszarami o trudnym terenie zajmie dużo czasu, więc koszt będzie duży. Koszty na wykresie mogą przedstawiać coś więcej niż tylko czas lub odległość. Mogą na przykład reprezentować ryzyko strategiczne lub dostępność łupów. Zobaczymy wiele zastosowań pathfindingu w sytuacjach, w których koszt jest kombinacją czasu, odległości i innych czynników. Dla całej trasy przez graf, od węzła początkowego do węzła docelowego, możemy obliczyć całkowity koszt ścieżki. Jest to po prostu suma kosztów każdego połączenia na trasie. Na rysunku poniżej, jeśli kierujemy się z węzła A do węzła C przez węzeł B, a koszty wynoszą 4 z A do B i 5 z B do C, całkowity koszt trasy wynosi 9.



    Punkty reprezentatywne w regionie

    Możesz od razu zauważyć, że jeśli dwa regiony są połączone (na przykład pokój i korytarz), odległość między nimi (a tym samym czas przejścia między nimi) wyniesie zero. Jeśli stoisz w drzwiach, przejście od strony pokoju na stronę korytarza jest natychmiastowe. Czy zatem wszystkie połączenia nie powinny mieć zerowego kosztu? Zwykle mierzymy odległości lub czasy połączeń od reprezentatywnego punktu w każdym regionie. Wybieramy więc środek pokoju i środek korytarza. Jeśli pokój jest duży a korytarz jest długi, to prawdopodobnie będzie duża odległość między ich punktami środkowymi, więc koszt będzie duży. Często zobaczysz to na diagramach grafów odnajdywania ścieżki, takich jak rysunek :



    w każdym regionie zaznaczony jest reprezentatywny punkt. Pełna analiza tego podejścia zostanie opisana w dalszej części. Jest to jedna z subtelności reprezentowania poziomu gry dla Pathfindera i powrócimy do problemów, które powoduje.

    Ograniczenie nieujemne

    Ponoszenie kosztów ujemnych wydaje się nie mieć sensu. Nie możesz mieć ujemnej odległości między dwoma punktami, a przemieszczenie się tam nie może zająć ujemnej ilości czasu. Matematyczna teoria grafów dopuszcza jednak wagi ujemne i mają one bezpośrednie zastosowanie w niektórych problemach praktycznych. Te problemy są całkowicie poza normalnym tworzeniem gier i wszystkie wykraczają poza zakres. Pisanie algorytmów, które mogą działać z wagami ujemnymi, jest zazwyczaj bardziej złożone niż w przypadku algorytmów o wagach ściśle nieujemnych. W szczególności algorytmy Dijkstry i A* powinny być używane tylko z wagami nieujemnymi. Możliwe jest skonstruowanie grafu o ujemnych wagach, tak aby algorytm odnajdywania ścieżki zwrócił sensowny wynik. Jednak w większości przypadków Dijkstra i A* weszliby w nieskończoną pętlę. To nie jest błąd algorytmów. Matematycznie nie ma czegoś takiego jak najkrótsza ścieżka na wielu wykresach o ujemnych wagach; rozwiązanie po prostu nie istnieje. Kiedy używam terminu "koszt", oznacza to wagę nieujemną. Koszty są zawsze dodatnie. Nigdy nie będziemy musieli używać wag ujemnych ani algorytmów, które sobie z nimi poradzą. Nigdy nie musiałem ich używać w żadnym projekcie tworzenia gier, nad którym pracowałem, i nie mogę przewidzieć sytuacji, w której mógłbym.


    KIERUNKOWE WYKRESY WAŻONE

    W wielu sytuacjach wykres ważony jest wystarczający do reprezentowania poziomu gry i widziałem implementacje, które używają tego formatu. Możemy jednak pójść o krok dalej. Główne algorytmy odnajdywania ścieżek wspierają użycie bardziej złożonej formy grafu, grafu skierowanego,



    który często jest przydatny dla programistów. Do tej pory zakładaliśmy, że jeśli można przemieszczać się między węzłem A a węzłem B (np. pokój i korytarz), to można przejść z węzła B do węzła A. Połączenia przebiegają w obie strony, a koszt jest taki sam w obu kierunkach. Wykresy ukierunkowane zamiast tego zakładają, że połączenia są tylko w jednym kierunku. Jeśli możesz dostać się z węzła A do węzła B i na odwrót, to na grafie pojawią się dwa połączenia: jedno dla A do B i jedno dla B do A. Jest to przydatne w wielu sytuacjach. Po pierwsze, nie zawsze jest tak, że możliwość przejścia z A do B implikuje, że B jest osiągalny z A. Jeśli węzeł A reprezentuje podniesiony chodnik, a węzeł B reprezentuje podłogę magazynu pod nim, postać może łatwo spaść z punktu A do punktu B, ale nie będzie w stanie ponownie wskoczyć w górę. Po drugie, posiadanie dwóch połączeń w różnych kierunkach oznacza, że mogą wystąpić dwa różne koszty. Weźmy ponownie przykład z chodnikiem, ale dodajmy drabinę. Biorąc pod uwagę koszty w kategoriach czasu, spadnięcie z chodnika nie zajmuje prawie wcale czasu, ale wspinanie się po drabinie może zająć kilka sekund. Ponieważ koszty są powiązane z każdym połączeniem, można to w prosty sposób przedstawić: połączenie z A (chodnik) do B (piętro) ma niski koszt, a połączenie z B do A ma większy koszt. Matematycznie graf skierowany jest identyczny z grafem nieskierowanym, z tą różnicą, że para węzłów tworzących połączenie jest teraz uporządkowana. Podczas gdy połączenie < węzeł A, węzeł B, koszt > w grafie nieskierowanym jest identyczne jak (o ile koszty są równe), w grafie skierowanym są to różne połączenia.

    TERMINOLOGIA

    Terminologia dotycząca wykresów jest różna. W tekstach matematycznych często widzisz raczej wierzchołki niż węzły i krawędzie niż połączenia (i, jak już widzieliśmy, wagi, a nie koszty). Wielu twórców sztucznej inteligencji, którzy aktywnie badają pathfinding, używa tej terminologii w kontaktach z literaturą matematyczną. Może to być mylące w kontekście tworzenia gier, ponieważ wierzchołki częściej odnoszą się do elementu geometrii 3D, co jest czymś zupełnie innym. Nie ma uzgodnionej terminologii dla grafów odnajdywania ścieżki w artykułach o grach i seminariach. Widziałem lokalizacje, a nawet "kropki" dla węzłów i widziałem łuki, ścieżki, łącza i "linie" dla połączeń. Będę używał terminologii węzłów i połączeń w tym rozdziale, ponieważ jest ona powszechna, stosunkowo znacząca (w przeciwieństwie do kropek i linii) i jednoznaczna (łuki i wierzchołki mają znaczenie w grafice gier). Ponadto, chociaż mówiłem o skierowanych nieujemnych grafach ważonych, prawie cała literatura dotycząca odnajdywania ścieżek nazywa je po prostu grafami i zakłada, że wiesz, o jaki rodzaj grafu chodzi. Zrobię to samo.

    REPREZENTACJA

    Musimy reprezentować nasz graf w taki sposób, aby algorytmy wyszukiwania ścieżek, takie jak A* i Dijkstra, mogły z nim współpracować. Jak zobaczymy, algorytmy muszą odpytywać połączenia wychodzące z dowolnego danego węzła. A dla każdego takiego połączenia muszą mieć dostęp do jego kosztu i miejsca docelowego. Możemy przedstawić wykres naszym algorytmom za pomocą następującego interfejsu:

    1 class Graph:
    2 # An array of connections outgoing from the given node.
    3 function getConnections(fromNode: Node) -> Connection[]
    4
    5 class Connection:
    6 # The node that this connection came from.
    7 fromNode: Node
    8
    9 # The node that this connection leads to.
    10 toNode: Node
    11
    12 # The non-negative cost of this connection.
    13 function getCost() -> float

    Klasa graph po prostu zwraca tablicę obiektów połączeń dla dowolnego przeszukiwanego węzła. Z tych obiektów można pobrać węzeł końcowy i koszt. Prosta implementacja tej klasy przechowuje połączenia dla każdego węzła i po prostu zwraca listę. Każde połączenie miałoby koszt i węzeł końcowy przechowywane w pamięci. Bardziej złożona implementacja może obliczyć koszt tylko wtedy, gdy jest to wymagane, wykorzystując informacje z aktualnej struktury poziomu gry. Zauważ, że na tej liście nie ma interfejsu dla węzła, ponieważ nie musimy go określać. W wielu przypadkach wystarczy nadanie węzłom unikalnej liczby i użycie liczb całkowitych jako typu danych. W rzeczywistości zobaczymy, że jest to szczególnie potężna implementacja, ponieważ otwiera pewne konkretne, bardzo szybkie optymalizacje algorytmu A*.





    Sztuczna Inteligencja i Robotyka



    • Co to są inteligentne roboty?

    • Krótka historia robotyki

    • Automatyzacja i autonomia

    • Autonomia organizacji oprogramowania

    • Telesystemy

    • Zachowania

    • Postrzeganie i zachowania

    Koordynacja behawioralna

    •  Umieć napisać wzór na funkcję koordynacji i zdefiniować każdy składnik.
    •  Wymień i opisz trzy metody koordynacji behawioralnej: współpraca, rywalizacja i sekwencjonowanie.
    •  Mając opis zestawu zachowań, skonstruuj pole potencjalne, łącząc pierwotne pola potencjalne, oblicz wektor wyjściowy każdego zachowania, a następnie połącz wektory numerycznie i graficznie, aby obliczyć wynikową akcję.
    •  Wymień trzy ograniczenia potencjalnych obszarów koordynacji behawioralnej i możliwe rozwiązania.
    •  Mając opis zestawu zachowań oraz ich wejść i wyjść, zaprojektuj schemat koordynacji stylu subsumpcji, stosując odpowiednio tłumienie i hamowanie.
    •  Reprezentuj sekwencję zachowań za pomocą automatów skończonych, pokazując zarówno pełną tabelę przejść, jak i reprezentację graficzną. Reprezentuj tę samą sekwencję za pomocą skryptu.


    Omówienie

    W poprzedniej Części wprowadzono wrodzone mechanizmy uwalniania i opisano, w jaki sposób tworzyły one niejawne łańcuchy, ponieważ wielokrotne afordancje (normalnie) nie występują na świecie. Jeśli zderza się ze sobą wiele afordancji, skonkretyzowane zachowania mogą stworzyć równowagę, w której zwierzę jest zamrożone w miejscu, wywierać dominację, gdzie jedno zachowanie jest zwycięzcą, lub skutkować anulowaniem, gdzie zachowania znoszą się nawzajem, a zwierzę powraca do innego zachowania. Żadna z tych odpowiedzi nie jest szczególnie pożądanym rezultatem wielu zachowań, zwłaszcza że wyniki mogą być nieco przypadkowe. Gdy projektant ma kilka dobrze zaprojektowanych i przetestowanych indywidualnych zachowań, pytania takie jak: Co się dzieje, gdy kilka zachowań zostanie uwolnionych (zainicjowanych) w tym samym czasie? a co z sekwencjami zachowań? zaczynają powstawać. Te pytania prowadzą do badania koordynacji zachowań.

    SERIA ZACHOWAŃ

    Koordynacja behawioralna dotyczy tego, jak niezależne zachowania oddziałują poprawnie, ale, co ważniejsze, z serią zachowań, to znaczy, jak każde zachowanie działa jako część rozpoznawalnej sekwencji. Jednym z pierwszych popularnych zachowań, na które patrzyło wielu robotników, było podnoszenie i wyrzucanie pustej puszki po napoju przez robota. Ta sekwencja obejmowała sześć zachowań: poszukaj puszki, podejdź do puszki, gdy zostanie znaleziona, podnieś puszkę, poszukaj kosza, podejdź do kosza i wrzuć puszkę do kosza. Myślenie o tych zachowaniach jako równoległych lub połączonych jest sprzeczne z intuicją. (Z pewnością istnieje możliwość współbieżności, na przykład omijania przeszkód podczas przechodzenia do puszki po napojach lub kosza na śmieci). Dlatego trzeba było wprowadzić nowe techniki kontrolowania sekwencji zachowań. Większość z tych technik jest koncepcyjnie odpowiednikiem konstruowania makra lub zachowania "abstrakcyjnego", w którym struktura schematu jest używana rekurencyjnie w celu uproszczenia programowania programu sterującego. Ta część formalnie wprowadza koordynację behawioralną. Rozpoczyna się od przedstawienia matematycznego wyrażenia funkcji koordynacyjnej C. Następnie część dzieli się na trzy sekcje, po jednej dla każdego z głównych typów funkcji koordynacyjnych i ich najpopularniejszego algorytmu: pól potencjalnych, subsumpcji i automatów skończonych. Część kończy się omówieniem sztucznej inteligencji i koordynacji behawioralnej, a następnie podsumowaniem.


    Funkcja koordynacji
    FUNKCJA KOORDYNACJI


    Ogólna reakcja robota ρ jest funkcją zachowań B, wzmocnienia każdego zachowania G oraz funkcji koordynacji C. Funkcja koordynacji C pobiera dane wyjściowe wielu zachowań i wytwarza jedną odpowiedź lub wynik. Jest to pokazane graficznie na rysunku i wyrażone w notacji S-R jako:



    METODY WSPÓŁPRACY
    KONKURENCYJNE METODY
    METODY SEKWENCJI


    Istnieją trzy kategorie funkcji koordynacyjnych. Rysunek



    taksonomię możliwych wyborów funkcji koordynacyjnych. Zestaw zachowań może być współbieżny, to znaczy wszystkie działają w tym samym czasie, lub mogą działać jako sekwencja. Jeśli zachowania są współbieżne, istnieją dwie szerokie kategorie algorytmów koordynujących zestaw zachowań. Jeden zestaw to metody współpracujące, w których funkcja koordynacji łączy dane wyjściowe poszczególnych zachowań w jeden wynik. Najpopularniejszymi metodami współpracy są sumowanie wektorów, w którym wektory wynikają z reprezentacji pól potencjalnych schematu silnika oraz logika rozmyta. Druga kategoria algorytmów współbieżnych to metody konkurencyjne, w których poszczególne zachowania podlegają arbitrażowi. Najczęstsze metody rywalizacji to subsumpcja i głosowanie. Jeśli zachowania mają tworzyć złożoną sekwencję poza tym, co można zwizualizować za pomocą IRM, metody, takie jak automaty skończone i skrypty, służą jako metody sekwencjonowania.

    ABSTRAKCYJNE ZACHOWANIE

    Istnieją dwie ważne uwagi praktyczne dotyczące funkcji koordynacyjnych. Po pierwsze, badacze zorientowani na sztuczną inteligencję rzadko używają systemów opartych na regułach do koordynowania funkcji z powodu wielu wad reguł dla otwartych światów i ogólnie problemów z systemami opartymi na regułach. Po drugie, architektury techniczne często mieszają i dopasowują funkcje koordynacji. Grupę zachowań, które tworzą sekwencję lub makro, można pogrupować w abstrakcyjne zachowanie, które może używać automatów o skończonych stanach, aby jawnie koordynować zachowania, podczas gdy inne zachowania, takie jak unikanie przeszkód, mogą wykorzystywać potencjalne pola.


    Metody współpracy: pola potencjalne
    METODOLOGIA PÓL POTENCJALNYCH


    Najpopularniejszą metodą współdziałania zachowań jest przedstawienie wyniku jako wektora. Często wektor jest tworzony przez schemat motoryczny przy użyciu reprezentacji potencjalnego pola możliwych działań, zwykle określanej jako metodologia pól potencjalnych lub w skrócie pfields. Potencjalne style zachowań zawsze używają wektorów do reprezentowania wyników działania zachowań i sumowania wektorów, aby połączyć wektory z różnych zachowań w celu wytworzenia wyłaniającego się zachowania. Logika rozmyta to druga główna metoda, wykraczająca poza zakres naszego materiału.


    Wizualizacja pól potencjalnych
    WEKTORSKI

    Pierwszą zasadą architektury pól potencjalnych jest to, że działanie motoryczne zachowania musi być reprezentowane jako pole potencjalne. Potencjalne pole to tablica lub pole wektorów. Wektor to obiekt matematyczny, który składa się z wielkości i kierunku. Wektory są często używane do reprezentowania siły. Są one zazwyczaj rysowane jako strzałki, gdzie długość strzałki reprezentuje wielkość siły, a kąt strzałki reprezentuje kierunek. Wektory są zwykle reprezentowane pogrubioną wielką literą, na przykład V. Wektor można również zapisać jako krotkę (m, d), gdzie m oznacza wielkość, a d kierunek. Zgodnie z konwencją, wielkość jest liczbą rzeczywistą z przedziału od 0,0 do 1, ponieważ wielkość jest znormalizowana tak, aby odpowiadała skali tego, co faktycznie potrafi zrobić robot. Wielkość może być dowolną liczbą rzeczywistą. Tablica reprezentuje region przestrzeni. W większości zastosowań robotycznych przestrzeń jest dwuwymiarowa i przedstawia świat z lotu ptaka, podobnie jak mapa. Mapa podzielona jest na kwadraty, tworząc siatkę (x, y). Każdy element tablicy reprezentuje kwadrat przestrzeni. Dostrzegalne obiekty na świecie wywierają na otaczającą przestrzeń pole siłowe. Pole siłowe jest analogiczne do pola magnetycznego lub grawitacyjnego. Robota można traktować jako cząstkę, która weszła w pole generowane przez obiekt lub środowisko. Wektor w każdym elemencie reprezentuje siłę, zarówno kierunek skrętu, jak i wielkość lub prędkość poruszania się w tym kierunku, które robot czułby, gdyby znajdował się w tym konkretnym miejscu. Pola potencjalne są ciągłe, ponieważ nie ma znaczenia, jak mały jest element; w każdym punkcie przestrzeni istnieje skojarzony wektor. Rysunek



    pokazuje, w jaki sposób przeszkoda wywierałaby na robota pole i zmuszała go do ucieczki. Jeśli robot znajduje się blisko przeszkody, powiedzmy w promieniu pięciu metrów, znajduje się wewnątrz pola potencjalnego i wyczuje siłę, która sprawi, że będzie chciał zmierzyć się bezpośrednio z przeszkodą (jeśli jeszcze tego nie zrobił) i oddalić się. Jeśli robot nie znajduje się w zasięgu przeszkody, po prostu tam siedzi, ponieważ nie działa na niego żadna siła. Zauważ, że pole reprezentuje, co robot powinien zrobić (schemat silnika) na podstawie tego, czy robot dostrzega przeszkodę (schemat percepcyjny). Pole nie dotyczy tego, jak robot znalazł się tak blisko przeszkody; robot odczuwa tę samą siłę, jeśli zdarzy się, że znajdzie się w zasięgu lub jeśli po prostu tam siedział i ktoś położył rękę obok robota. Jednym ze sposobów myślenia o polach potencjalnych jest wyobrażenie sobie pola sił działającego na robota. Innym sposobem jest myślenie o nich jako o powierzchni energii potencjalnej w trzech wymiarach (grawitacja jest często przedstawiana w ten sposób) z robotem jako kulką. W takim przypadku wektor wskazuje kierunek, w którym robot "toczy się" po powierzchni. Wzgórza na powierzchni powodują, że robot toczy się lub dookoła (wektory będą wskazywać od "szczytu" wzgórza), a doliny powodują, że robot toczy się w dół (wektory skierowane w dół).

    PIĘĆ PIERWOTNYCH PÓL
    POLE JEDNOLITE


    Istnieje pięć podstawowych pól potencjalnych lub prymitywów, które można łączyć w celu budowy bardziej złożonych pól: jednorodne, prostopadłe, przyciągające, odpychające i styczne. Rysunek



    pokazuje jednolite pole. Na jednolitym polu robot czułby tę samą siłę, bez względu na to, gdzie by się znajdował. Bez względu na to, gdzie został postawiony i w jakiej orientacji, czułby potrzebę ustawienia się zgodnie z kierunkiem strzałki i poruszania się w tym kierunku z prędkością proporcjonalną do długości strzały. Jednolite pole jest często używane do uchwycenia zachowania "idź w kierunku nr o".

    POLE PROSTOPADŁE

    Rysunek b przedstawia prostopadłe pole, w którym robot jest zorientowany prostopadle do jakiegoś obiektu, ściany lub granicy. Przedstawione pole jest odwrócone od szarej ściany, ale prostopadłe pole może być również skierowane w stronę obiektu.

    ATRAKCYJNE POLE
    POLE ODRZUCENIA


    Rysunek c ilustruje atrakcyjne pole. Okrąg w środku pola przedstawia obiekt, który przyciąga robota. Gdziekolwiek jest robot, robot "czuje" siłę względem przedmiotu. Atrakcyjne pola są przydatne do reprezentowania taksówki lub tropizmu, gdzie agenta dosłownie przyciąga światło, jedzenie lub cel. Przeciwieństwem pola atrakcyjnego jest pole odpychające, pokazane na rysunku d. Pola odrażające są zwykle kojarzone z przeszkodami lub rzeczami, których agent powinien unikać. Im bliżej robota znajduje się obiekt, tym silniejsza siła odpychająca odpycha robota od niego o 180°.

    POLE STYCZNE

    Ostatnim polem pierwotnym jest pole styczne zilustrowane na rysunku e. Pole jest styczne do obiektu (pomyśl o wektorze stycznym jako prostopadłym do promieniowych linii rozciągających się na zewnątrz obiektu). Pola styczne mogą się obracać w kierunku zgodnym lub przeciwnym do ruchu wskazówek zegara; rysunek pokazuje obrót w prawo. Pola te są przydatne do kierowania robotem, aby ominął przeszkodę lub aby robot coś zbadał.


    Profile wielkości
    PROFIL WIELKOŚCI


    Zauważ, że na rysunku powyżej długość strzałek zmniejsza się, gdy zbliżają się do obiektu. Sposób, w jaki zmienia się wielkość wektorów w polu, nazywa się profilem wielkości. (Termin "profil amplitudy" jest tu używany, ponieważ termin "profil prędkości" jest używany przez inżynierów automatyków do opisania, w jaki sposób silniki robota przyspieszają i zwalniają, aby wytworzyć określony ruch bez szarpnięć.) Rozważmy pole odpychające, matematycznie pole można przedstawić za pomocą współrzędnych biegunowych, a środek pola jest początkiem (0,0):


    W tym przypadku wielkość była wartością stałą, c: długość strzał była taka sama. Można to zobrazować za pomocą wykresu wielkości pokazanego na rysunku a


    Ten profil mówi, że robot ucieknie (kierunek, w którym będzie biegł to ? ) z tą samą prędkością, bez względu na to, jak blisko znajduje się obiekt, o ile znajduje się w zasięgu przeszkody. Gdy tylko robot znajdzie się poza zasięgiem przeszkody, prędkość spada do 0,0, zatrzymując robota. Pole jest zasadniczo binarne: robot albo ucieka ze stałą prędkością, albo się zatrzymuje. W praktyce pojawia się problem o stałej wielkości. Prowadzi to do szarpanego ruchu na obwodzie pola. Jest to zilustrowane, gdy robot zmierza w określonym kierunku, a następnie napotyka przeszkodę. Ucieka, niemal natychmiast opuszczając pole. Wraca na swoją pierwotną ścieżkę, ponownie napotyka pole i tak dalej.

    REFLEKSYJNOŚĆ
    LINIOWY SPADEK

    Profile Magnitude rozwiązują problem stałej wielkości. Umożliwiają również projektantowi robotów przedstawienie refleksyjności (że reakcja powinna być proporcjonalna do siły bodźca) i tworzenie interesujących odpowiedzi. Rozważmy teraz profil na rysunku .4c. Pokazuje, jak obserwator widziałby robota w tym polu: jeśli robot znajduje się daleko od obiektu, odwróci się i szybko do niego przesunie, a następnie zwolni, aby nie przestrzelić i uderzyć w obiekt. Matematycznie nazywa się to spadkiem liniowym, ponieważ szybkość, z jaką zmniejsza się wielkość wektorów, można wykreślić jako linię prostą. Wzór na linię prostą to y = mx + b, gdzie x to odległość, a y to wielkość. b odchylenia w miejscu, w którym zaczyna się linia, a m to nachylenie ( ). Dowolna wartość mib jest akceptowalna, dodatnia lub ujemna. Jeśli nie jest określony, m = 1 lub -1 (nachylenie 45° w górę lub w dół) oraz b = 0 w funkcjach liniowych.

    WYKŁADNICZY SPADEK

    Profil liniowy na rysunku b odpowiada zachowaniu pożądanemu przez projektanta: aby robot reagował bardziej, im bliżej się znajduje. Ale profil liniowy dzieli problem profilu stałej wielkości w ostrym przejściu do prędkości 0,0. W związku z tym można zastosować inny profil, aby uchwycić potrzebę silnej reakcji, ale z większym zwężeniem. Jednym z takich profili jest funkcja wykładniczego spadku, w której wielkość spadku jest proporcjonalna do kwadratu odległości: na każdą jednostkę odległości od obiektu siła działająca na robota zmniejsza się o połowę. Profil wykładniczy pokazano na rysunku c. Jak widać z poprzednich przykładów, akceptowalny jest prawie każdy profil wielkości. Motywacją do korzystania z profili wielkości jest dostrojenie zachowania. Należy zauważyć, że robot oblicza tylko wektory działające na niego w jego bieżącej lokalizacji. Liczby pokazują całe pole dla wszystkich możliwych lokalizacji robota. Powstaje wtedy pytanie, dlaczego figury pokazują całe pole nad przestrzenią. Po pierwsze, pomaga w wizualizacji tego, co robot będzie robił ogólnie, a nie tylko w jednym konkretnym kroku czasowym. Po drugie, ponieważ pola są reprezentacjami ciągłymi, upraszcza to potwierdzanie, że pole jest poprawne i sprawia, że wszelkie nagłe przejścia są łatwo widoczne.


    Pola potencjalne i percepcja W poprzednich przykładach siła pola potencjalnego w dowolnym punkcie była funkcją zarówno względnej odległości między robotem a obiektem, jak i profilu wielkości. Siła pola potencjalnego może być funkcją bodźca, niezależnie od odległości. Przypomnij sobie z rozdziału 7 przykład zachowań żywieniowych młodych rybitw popielaty, gdzie zachowaniem żywieniowym kieruje bodziec "czerwony". To zachowanie może być modelowane przez atrakcyjne pole. Im większy i bardziej czerwony obiekt w polu widzenia dziecka, tym silniejsze przyciąganie, co sugeruje, że bardziej odpowiedni będzie profil wielkości wykorzystujący rosnącą funkcję wykładniczą. Inną ważną kwestią, o której już wspomniano, jest to, że potencjalne pola są egocentryczne, ponieważ percepcja robota jest egocentryczna.


    Programowanie pojedynczego pola potencjału

    Pola potencjalne są w rzeczywistości łatwe do zaprogramowania, zwłaszcza że są one egocentryczne dla robota. Wizualizacja całego pola może wskazywać, że robot i obiekty znajdują się w stałym, bezwzględnym układzie współrzędnych, ale tak nie jest. Robot oblicza wpływ potencjalnego pola, zwykle w postaci linii prostej, przy każdej aktualizacji, nie pamiętając, gdzie był wcześniej ani skąd się przesunął. Powinno to stać się jasne dzięki następującym przykładom. Pierwotne pole potencjału jest zwykle reprezentowane przez pojedynczą funkcję. Wektor oddziałujący na robota jest obliczany przy każdej aktualizacji. Rozważmy przypadek robota z jednym czujnikiem zasięgu skierowanym do przodu. Projektant uznał, że odpowiednie jest pole odpychające z liniowym spadkiem. Formuła to:


    gdzie D to maksymalny zasięg działania pola lub maksymalna odległość, przy której robot może wykryć przeszkodę, a d to odległość robota od przeszkody. (D nie zawsze jest zasięgiem wykrywania. Może to być zasięg, w którym robot powinien reagować na bodziec. Na przykład wiele sonarów może wykrywać przeszkody oddalone o 20 stóp, powodując prawie nieskończenie małą zmianę w wyłaniającym się zachowaniu, ponieważ przeszkody są tak daleko z dala, ale wymaga narzutu czasu wykonywania wywołania funkcji, aby obliczyć pomijalną siłę. W praktyce robotnik może ustawić D na dwa metry). Zauważ, że wzór daje wynik, w którym 0.0 ? Vmagnituda ? 1.0. Poniżej znajduje się fragment kodu C, który przechwytuje odpychające pole.


    W tym momencie łatwo zilustrować, w jaki sposób potencjalne pole może zostać wykorzystane przez zachowanie RUNAWAY dla robota z pojedynczym czujnikiem. Zachowanie RUNAWAY użyje funkcji odpychania() jako schematu motorycznego oraz funkcji readSonar() jako schematu percepcyjnego. Wyjściem zachowania jest wektor. Runaway jest wywoływany przez robota w każdym cyklu aktualizacji.



    Połączenie pól i zachowań
    SUMOWANIE WEKTORÓW


    Jak wspomniano wcześniej, pierwszym atrybutem metodologii prawdziwych pól potencjalnych jest to, że wymaga ona implementacji wszystkich zachowań jako pól potencjalnych. Drugim atrybutem jest to, że łączy zachowania przez sumowanie wektorów. Na robota na ogół działają jednocześnie siły wynikające z wielu zachowań. W tej sekcji przedstawiono dwa przykłady powstawania wielu zachowań oraz ich implementacji i łączenia za pomocą sumowania wektorów. Pierwszym przykładem jest prosta nawigacja, w której robot zmierza do celu (określonego jako "10,3 mw kierunku Θ") i napotyka przeszkodę. Schemat silnika zachowania move2goal jest reprezentowany przez atrakcyjne pole potencjału, które wykorzystuje kodery wału w robocie, aby stwierdzić, czy osiągnął on pozycję celu. Niekontrolowane zachowanie jest odpychającym polem i wykorzystuje czujnik zasięgu do wykrywania, czy coś znajduje się przed robotem. Rysunek przedstawia widok z lotu ptaka obszaru, który reprezentuje pole potencjalne.



    Zachowanie move2goal na rysunku b wywiera atrakcyjne pole na całej przestrzeni; gdziekolwiek jest robot, poczuje siłę celu. Uciekające zachowanie na rycinie a wytwarza odpychające pole w promieniu wokół przeszkody (technicznie odpychające pole rozciąga się na całą przestrzeń, podobnie jak move2goal, ale wielkość odpychania wynosi 0,0 poza promieniem). Połączone pole pokazano na rysunku c.



    Rysunek



    ilustruje wyłaniające się zachowanie robota w polu, jeśli zaczyna się w prawym dolnym rogu. W chwili t0 robot wyczuwa świat. Może postrzegać tylko cel i nie może dostrzec przeszkody, więc jedynym wektorem, jaki odczuwa, jest przyciąganie (uciekający zwraca wektor o wartości 0,0). Porusza się po linii prostej do celu. W t2 robot aktualizuje swoje czujniki i teraz dostrzega zarówno cel, jak i przeszkodę. Oba zachowania wnoszą wektor; wektory są sumowane i robot zbacza z kursu. W t3 robot prawie przekroczył przeszkodę, a celem jest wywarcie większej siły. W t4 robot powraca do kursu i osiąga cel. Przykład ilustruje inne punkty dotyczące metod pól potencjalnych: wpływ szybkości aktualizacji, minima lokalne i holonomiczność. Zauważ, że odległość (długość strzałek) między aktualizacjami jest różna ze względu na zmiany wielkości wektora wyjściowego, który kontroluje prędkość robota. Jeśli robot ma "krótszy" wektor, porusza się wolniej, a zatem pokonuje mniejszą odległość w jednostce czasu. Może również "przestrzelić", jak widać między t3 i t4, gdzie robot faktycznie idzie dalej bez obracania się, a następnie musi zawrócić, aby dotrzeć do celu. W rezultacie ścieżka jest poszarpana ostrymi liniami. Wynikowa ścieżka będzie gładsza, jeśli robot ma szybszy interwał aktualizacji. Innym aspektem szybkości aktualizacji jest to, że robot może przekroczyć cel, zwłaszcza jeśli używa koderów wału (załóżmy, że cel znajduje się 10,3 metra od miejsca, w którym robot się rozpoczął). Czasami projektanci używają atrakcyjnych pól, których wielkość spada, gdy robot się zbliża, spowalniając go, aby robot mógł stwierdzić, kiedy osiągnął cel. (Programiści zazwyczaj umieszczają tolerancję wokół lokalizacji celu, na przykład zamiast 10,3 m cel to 10,3 m +/- 0,5 m.) Pola potencjałów traktują robota tak, jakby był holonomiczny, czyli cząstka, która może się zmienić natychmiastowa prędkość i kierunek. Nie dotyczy to prawdziwych robotów. Roboty badawcze, takie jak Kheperas, mogą skręcać w dowolnym kierunku w miejscu, ale występuje wymierny błąd w skręcaniu spowodowany kontaktem kół z powierzchnią. Wiele robotów ma układ kierowniczy Ackerman, czyli samochód, i każdy, kto próbował zaparkować samochód równolegle, wie, że samochód może jechać tylko w określonych kierunkach - samochód nie może jechać bokiem.

    LOKALNY PROBLEM MINIMA

    Trzeci problem polega na tym, że pola mogą sumować się do wartości 0,0. Wracając do rysunku



    narysuj linię między celem a przeszkodą. Wzdłuż tej linii za przeszkodą wektory mają tylko głowę (kierunek strzały) i nie mają ciała (długość strzały). Oznacza to, że wielkość wynosi 0,0 i jeśli robot dotrze do tego miejsca, zatrzyma się i nie ruszy ponownie. Nazywa się to lokalnym problemem minimów, ponieważ potencjalne pole ma minima lub dolinę, która uwięzi robota. Na końcu zostaną przedstawione rozwiązania problemu minimów lokalnych.


    Przykład przy użyciu jednego zachowania na czujnik

    Jako kolejny przykład tego, jak potężny jest pomysł sumowania wektorów, warto zastanowić się, w jaki sposób zachowanie RUNAWAY w celu unikania przeszkód jest powszechnie wdrażane w prawdziwych robotach. Rysunek 8.9 przedstawia układ czujników zasięgu podczerwieni w robocie Khepera.



    Ponieważ czujniki są zamontowane na stałe na platformie, znany jest ich kąt ?i względem przodu. Jeśli czujnik odbiera odczyt zasięgu, coś znajduje się przed tym czujnikiem. W polu odpychającym dla RUNAWAY wektor wyjściowy będzie miał 180° przeciwny do kąta ?i. Czujnik podczerwieni nie jest w stanie określić, czy przeszkoda może znajdować się nieco poza osią czujnika, więc odczyt jest traktowany tak, jakby przeszkoda znajdowała się prosto przed czujnikiem i prostopadle do niego. Gdyby ten czujnik był jedynym czujnikiem w robocie, zachowanie RUNAWAY byłoby bardzo proste. A co, jeśli, tak jak w przypadku Khepery, robot ma czujniki wielozakresowe? Większe przeszkody byłyby wykrywane przez wiele czujników jednocześnie. Powszechnym rozwiązaniem jest zachowanie zachowania RUNAWAY dla każdego czujnika. Nazywa się to wielokrotnymi wystąpieniami tego samego zachowania. Poniżej znajduje się fragment kodu pokazujący wiele instancji; wszystko, co trzeba było zrobić, to dodać pętlę for do odpytywania każdego czujnika. Wykorzystuje to dwie właściwości dodawania wektorów: jest asocjacyjne (a + b + c + d można wykonać jako ((a + b) + c) + d) i jest przemienne (nie ma znaczenia w jakiej kolejności wektory są sumowane).



    BOX CANYON

    Jak widać na rysunku robot jest w stanie wydostać się z przypominającej jaskinię pułapki, zwanej kanionem skrzynkowym, bez budowania modelu ściany.



    Każda instancja wnosi wektor, z których niektóre mają składnik X lub Y, który się anuluje. Z etologicznego punktu widzenia powyższy program jest elegancki, ponieważ jest odpowiednikiem przykładów behawioralnych u zwierząt. Przypomnij sobie model rana computrix i jej odpowiednika w prawdziwym życiu, w którym każde oko widzi muchę i reaguje na nią niezależnie od drugiego oka. W tym przypadku program traktuje robota tak, jakby miał osiem niezależnych oczu!

    SPÓJNOŚĆ FUNKCJONALNA
    ŁĄCZENIE DANYCH


    Z punktu widzenia robotyki przykład ilustruje dwa ważne punkty. Po pierwsze, działa bezpośrednie połączenie odczuwania z działaniem. Po drugie, programowanie behawioralne jest zgodne z dobrymi praktykami inżynierii oprogramowania. Uciekająca funkcja wykazuje spójność funkcjonalną, gdzie funkcja wykonuje jedną rzecz dobrze, a każda instrukcja w funkcji ma coś wspólnego z celem funkcji. Spójność funkcjonalna jest pożądana, ponieważ oznacza to, że funkcja prawdopodobnie nie wprowadzi skutków ubocznych do programu głównego lub nie będzie zależna od innej funkcji. Ogólna organizacja pokazuje łączenie danych, gdzie każde wywołanie funkcji przyjmuje prosty argument.186 Łączenie danych jest dobre, ponieważ oznacza, że wszystkie funkcje są niezależne; na przykład program można łatwo zmienić, aby pomieścić więcej czujników podczerwieni.

    SPÓJNOŚĆ PROCEDURALNA

    Alternatywą dla wielu wystąpień jest posiadanie schematu percepcyjnego dla niekontrolowanego przetwarzania wszystkich ośmiu odczytów zakresu. Jednym z podejść jest zsumowanie wszystkich ośmiu wektorów wewnętrznie. (Jako ćwiczenie pokaż, że wektor wynikowy z jednego zachowania sumuje wektory z ośmiu odczytów zakresu jest taki sam, jak sumowanie wektorów z ośmiu zachowań.) Nie jest to tak eleganckie z perspektywy inżynierii oprogramowania, ponieważ kod jest teraz specyficzny do robota (funkcja ma zapewnić spójność proceduralną)186 i może być używana tylko z robotem, który ma w tych lokalizacjach osiem czujników zasięgu. Innym podejściem, które daje inne wyłaniające się zachowanie, jest wywołanie funkcji schematu percepcyjnego, które zwraca kierunek i odległość odczytu pojedynczego największego zakresu. Takie podejście sprawia, że zachowanie jest bardziej selektywne.


    Zalety i wady

    Potencjalne style architektoniczne mają wiele zalet. Pole potencjalne to ciągła reprezentacja, którą można łatwo zwizualizować na dużym obszarze przestrzeni. W rezultacie projektantowi łatwiej jest zwizualizować ogólne zachowanie robota. Łatwo jest również łączyć pola i języki, takie jak C++, aby wspierać tworzenie bibliotek behawioralnych. Pola potencjalne można sparametryzować: zakres ich oddziaływania może być ograniczony, a każda funkcja ciągła może wyrażać zmianę wartości na odległość (liniową, wykładniczą itp.). Co więcej, pole dwuwymiarowe można zwykle rozszerzyć do pola trójwymiarowego, i tak zachowania opracowane dla 2D będą działać dla 3D.

    POLE HAŁASU LOSOWEGO

    Budowanie reaktywnego systemu z potencjalnymi polami nie jest pozbawione wad. Najczęściej przytaczanym problemem z potencjalnymi polami jest to, że wiele pól może zsumować się do wektora o wartości 0; nazywa się to problemem minimów lokalnych. Wróć do rysunku powyżej, Box Canyon. Gdyby robot był przyciągany do punktu za kanionem skrzynkowym, przyciągający wektor anulowałby wektor odpychający, a robot pozostałby nieruchomy, ponieważ wszystkie siły zniknęłyby. Przykładem osiągnięcia lokalnego minimum jest problem kanionu skrzynkowego. W praktyce istnieje wiele eleganckich rozwiązań tego problemu. Jednym z najwcześniejszych było posiadanie zawsze schematu silnika generującego wektory o małej wartości z losowego szumu12. Szum w schemacie silnika służyłby do odrzucenia przez robota wszelkich lokalnych minimów. Ponieważ robot nie mógł wiedzieć, kiedy napotka lokalne minimum lub maksimum, schemat losowego szumu był zawsze aktywny.

    SZABLONY NAWIGACJI

    Innym rozwiązaniem są szablony nawigacji (NaT). W NaT zachowanie unikania otrzymuje jako dane wejściowe wektor zsumowany z innych zachowań. Ten strategiczny wektor reprezentuje kierunek, w którym poruszałby się robot, gdyby w pobliżu nie było żadnych przeszkód. Jeśli robot ma wektor strategiczny, ten wektor daje wskazówkę, czy należy ominąć przeszkodę z prawej, czy z lewej strony. Na przykład, jeśli robot przejeżdża przez most, będzie chciał przejść na lewo od przeszkód po swojej prawej stronie, aby pozostać na środku mostu. Zauważ, że wektor strategiczny definiuje, co jest lewe, a co słuszne.



    FUNKCJE HARMONICZNE

    Trzecim rozwiązaniem problemu minimów lokalnych jest wyrażenie pól jako funkcji harmonicznych51. Pola potencjalne zaimplementowane jako funkcje harmoniczne gwarantują, że nie będą miały lokalnych minimów równych 0. Jest to bardziej kosztowne obliczeniowo, ponieważ całe pole musi być obliczone dla dużych obszarów , nie tylko dla wektorów działających na robota.

    Podsumowując główne punkty dotyczące architektur pól potencjalnych:

    •  Zachowania składają się z jednego lub więcej schematów i/lub zachowań zarówno motorycznych, jak i percepcyjnych. Schemat silnika zachowania musi być polem potencjalnym.
    •  Wszystkie zachowania działają współbieżnie, a wektory wyjściowe są sumowane. Zachowania są traktowane jednakowo i nie są podzielone na warstwy, chociaż mogą istnieć zachowania abstrakcyjne, które wewnętrznie sekwencjonują zachowania. Nie określono skoordynowanego programu kontroli; projektant może użyć logiki, automatów skończonych lub czegokolwiek, co uzna za stosowne. Sekwencjonowanie jest zwykle kontrolowane przez postrzegane sygnały lub afordancje w środowisku, które są wyzwalaczami.
    •  Chociaż wszystkie zachowania są traktowane jednakowo, zachowania mogą mieć różny wpływ na ogólne działanie robota. Zachowanie może zmienić zalety innego zachowania, zmniejszając w ten sposób lub zwiększając jego wielkość. Oznacza to, że zachowania mogą hamować lub pobudzać inne zachowania.
    •  Postrzeganie jest zwykle obsługiwane przez bezpośrednie postrzeganie lub afordancje.
    •  Percepcja może być podzielona przez wiele zachowań. Wiedza a priori może być dostarczana do schematów percepcyjnych tak, aby emulowały wyspecjalizowany czujnik; na przykład schemat percepcyjny wykorzystujący czujnik zasięgu może wykorzystywać wiedzę a priori o szerokości korytarza, aby odróżnić korytarz od drzwi.


    Metody rywalizacji: subsumpcja

    ARCHITEKTURA SUBSUMPCYJNA

    Metody konkurencyjne wykorzystują jakąś formę arbitrażu, zwykle subsumpcji lub głosowania. W subsumpcji wyższe poziomy zachowań subsumują lub hamują zachowania niższe. Podczas głosowania zachowania oddają głosy prowadzące do scenariusza, w którym zwycięzca bierze wszystko. Architektura subsumpcji Rodneya Brooksa (tradycyjnie z małymi "s") jest najbardziej wpływowym z systemów czysto reaktywnych i związanych z nimi konkurencyjnych metod. Część tego wpływu wynika z rozgłosu otaczającego bardzo naturalistyczne roboty budowane z subsumpcją. Roboty były pierwszymi, które były w stanie chodzić, unikać kolizji i wspinać się po przeszkodach bez przerw typu "ruch-myśl-ruch-myśl" Shakeya. Termin "zachowanie" w architekturze subsumpcji ma mniej precyzyjne znaczenie niż w teorii schematów. Zachowanie to sieć modułów wyczuwających i działających, które realizują zadanie. Moduły są rozszerzonymi automatami skończonymi AFSM lub automatami skończonymi, które mają rejestry, zegary i inne rozszerzenia umożliwiające im łączenie się z innymi modułami. AFSM jest odpowiednikiem interfejsu między schematami a skoordynowaną strategią kontroli w schemacie behawioralnym. Z punktu widzenia teorii schematów zachowanie subsumpcyjne jest w rzeczywistości zbiorem jednego lub więcej schematów behawioralnych, które w tej książce nazywa się abstrakcyjnymi zachowaniami. Zachowania subsumpcyjne są wyzwalane w sposób bodziec-odpowiedź, bez zewnętrznego programu jawnie je koordynującego i kontrolującego. Istnieją cztery interesujące aspekty subsumpcji w zakresie zwalniania i kontroli:

    WARSTWY KOMPETENCJI

    1. Moduły są pogrupowane w warstwy kompetencji. Warstwy odzwierciedlają hierarchię inteligencji lub kompetencji. Niższe warstwy zawierają podstawowe funkcje przetrwania, takie jak unikanie kolizji, podczas gdy wyższe poziomy tworzą działania bardziej ukierunkowane na cel, takie jak mapowanie. Każda z warstw może być postrzegana jako abstrakcyjne zachowanie dla określonego zadania.

    WARSTWY MOGĄ PODJĄĆ NIŻSZE WARSTWY

    2. Moduły w wyższej warstwie mogą przesłonić lub przejąć dane wyjściowe z zachowań w następnej niższej warstwie. Warstwy behawioralne działają równolegle i niezależnie, dlatego potrzebny jest mechanizm radzenia sobie z potencjalnymi konfliktami. Rozwiązanie w subsumpcji jest rodzajem zwycięzcy bierze wszystko, gdzie zwycięzcą jest zawsze wyższa warstwa.

    BRAK STANU WEWNĘTRZNEGO

    3. Unika się używania stanu wewnętrznego. Stan wewnętrzny w tym przypadku oznacza dowolny rodzaj lokalnej, trwałej reprezentacji, która reprezentuje stan świata lub model. Ponieważ robot jest agentem zlokalizowanym, większość jego informacji powinna pochodzić bezpośrednio ze świata. Jeśli robot jest zależny od reprezentacji wewnętrznej, jego zdaniem może zacząć niebezpiecznie odbiegać od rzeczywistości. Jakiś stan wewnętrzny jest potrzebny do uwolnienia zachowań, takich jak bycie przestraszonym lub głodnym, ale dobre projekty behawioralne minimalizują tę potrzebę.

    AKTYWUJ ZADANIE AKTYWUJĄC ODPOWIEDNIĄ WARSTWĘ

    4. Zadanie jest realizowane poprzez aktywację odpowiedniej warstwy, która następnie aktywuje warstwy znajdujące się pod nią i tak dalej. Jednak w praktyce systemy stylu subsumpcji nie są łatwe do wykonania, to znaczy nie można im nakazać wykonania innego zadania bez reorganizacji zachowań.


    Przykład

    POZIOM 0: UNIKAJ


    Aspekty te najlepiej ilustruje przykład, szeroko zmodyfikowany z oryginalnego artykułu Brooksa, aby zachować spójność z terminologią teorii schematów i ułatwić porównanie z metodologią pól potencjalnych. Robot zdolny do poruszania się do przodu, nie kolidujący z niczym, może być reprezentowany przez pojedynczą warstwę, poziom 0. W tym przykładzie robot ma wiele sonarów (lub innych czujników zasięgu), każdy skierowany w innym kierunku, oraz dwa siłowniki , jeden do jazdy do przodu i jeden do skręcania.

    WYKRES BIEGUOWY

    Zgodnie z rysunkiem,



    moduł SONAR odczytuje zakresy sonaru, filtruje szumy i tworzy wykres biegunowy. Wykres biegunowy przedstawia odczyty zasięgu wokół robota we współrzędnych biegunowych (r,θ). Jak pokazano na rysunku,



    wykres biegunowy można "odwinąć". Jeśli odczyt zasięgu dla sonaru skierowanego w przód jest poniżej pewnego progu, moduł COLLIDE deklaruje kolizję i wysyła sygnał zatrzymania do siłownika napędu FORWARD. Jeśli robot poruszał się do przodu, teraz się zatrzymuje. Tymczasem moduł FEELFORCE otrzymuje ten sam wykres biegunowy. Traktuje każdy odczyt sonaru jako siłę odpychającą, którą można przedstawić jako wektor. Przypomnij sobie, że wektor to konstrukcja matematyczna składająca się z wielkości i kierunku. FEELFORCE można traktować jako sumowanie wektorów z każdego z odczytów sonaru. Daje to nowy wektor. Odpychający wektor jest następnie przekazywany do modułu TURN. Moduł TURN rozdziela kierunek skrętu i przekazuje go do siłowników układu kierowniczego. TURN przekazuje również wektor do modułu FORWARD, który wykorzystuje wielkość wektora do określenia wielkości następnego ruchu do przodu (jak daleko lub jak szybko). Robot obraca się i oddala na niewielką odległość od przeszkody. Obserwowanym zachowaniem jest to, że robot będzie siedział nieruchomo, jeśli znajduje się na wolnej przestrzeni, dopóki nie zbliży się do niego przeszkoda. Jeśli przeszkoda znajduje się po jednej stronie robota, robot obróci się o 180° w drugą stronę i ruszy do przodu; zasadniczo ucieka. Dzięki temu człowiek może zająć się robotem. Robot może zareagować na przeszkodę, jeśli przeszkoda (lub robot) jest nieruchoma lub porusza się; odpowiedź jest obliczana przy każdej aktualizacji czujnika. Jeśli jednak część przeszkody lub inna przeszkoda jest martwa (ktoś próbuje zagonić robota do ściany), robot zatrzyma się, a następnie zastosuje wyniki do ucieczki. Więc zatrzyma się, skręci i znów zacznie iść do przodu. Zatrzymanie zapobiega przesuwaniu się robota w bok podczas obracania się i poruszania się do przodu. Poziom 0 pokazuje, jak dość złożony zestaw działań może wyłonić się z bardzo prostych modułów. Pomocne jest przekształcenie architektury subsumpcji w terminach użytych w tej książce, jak pokazano na rysunku



    Zwróć uwagę, jak wygląda to rozkład pionowy w subsumpcji: dane z czujników przepływają przez jednoczesne zachowania do elementów wykonawczych, a niezależne zachowania powodują, że robot postępuje właściwie. Moduł SONAR byłby uważany za globalny interfejs do czujników, podczas gdy moduły TURN i FORWARD byłyby uważane za część elementów wykonawczych (interfejs). Na potrzeby tej książki zachowanie musi składać się ze schematu percepcyjnego i schematu motorycznego. Schematy percepcyjne są podłączone do czujnika, natomiast schematy silnikowe są podłączone do siłowników. Dla poziomu 0 schematy percepcyjne byłyby zawarte w modułach FEELFORCE i COLLIDE. Schematy silników to moduły RUNAWAY i COLLIDE. COLLIDE łączy zarówno przetwarzanie percepcyjne (wyodrębnia wektor dla sonaru skierowanego bezpośrednio do przodu), jak i schemat działania (zatrzymuje się, jeśli jest odczyt). Zachowania pierwotne odzwierciedlają dwie ścieżki przechodzące przez warstwę. Jedno można nazwać zachowaniem uciekającym, a drugie zachowaniem kolizyjnym. Razem te dwa zachowania tworzą bogate zachowanie polegające na unikaniu przeszkód lub warstwę kompetencji. Należy również zauważyć, że w zachowaniach wykorzystywano percepcję bezpośrednią, czyli afordancje. Obecność odczytu zasięgu wskazywała na przeszkodę; robot nie musiał wiedzieć, jaka jest przeszkoda.





    SZTUCZNA INTELIGENCJA W ZARZĄDZANIU COVID-19

    Techniki sztucznej inteligencji były zaangażowane w różne obszary związane z pandemią koronawirusa, które obejmują:

    •  AI w systemach wczesnego wykrywania i ostrzegania
    •  AI w śledzeniu pacjentów wraz z prognozami
    •  AI w diagnostyce, leczeniu i leczeniu choroby
    •  Sztuczna inteligencja w uzyskiwaniu statusu i liczb związanych z chorobą za pomocą pulpitów nawigacyjnych
    •  Sztuczna inteligencja w bezpieczeństwie społecznym, nadzorze i prewencji

    AI w systemie wczesnego wykrywania i ostrzegania

    BlueDot: skupisko pacjentów z zapaleniem płuc pojawiło się na rynku rybnym w Wuhan w Chinach, jak zauważył BlueDot (system sztucznej inteligencji) 30 grudnia 2019 r. Po około 9 dniach stan został rozpoznany, a WHO ogłosiła ostrzeżenia. Atak został akredytowany jako COVID-19, a później został uznany przez WHO za wybuch pandemii, biorąc pod uwagę rozprzestrzenianie się i dotkliwość przypadków na całym świecie. BlueDot to organizacja założona w 2014 r. w Toronto w Kanadzie, która obejmuje panel wysoko wykwalifikowanych pracowników, takich jak lekarze, epidemiolodzy, weterynarze, twórcy oprogramowania i analitycy danych, a także naukowcy z różnych dziedzin . Personel wykorzystał przetwarzanie języka naturalnego jako narzędzie do generowania sztucznych odpowiedzi i dodatkowo zoptymalizował przetwarzanie Big Data w ograniczonym czasie. Ta technologia może pobierać informacje z różnych możliwych źródeł, takich jak media cyfrowe, globalne bilety lotnicze, dane demograficzne, raporty o stanie zdrowia zwierząt itp., i stosować je podczas przetwarzania.

    Działanie BlueDot: Posiada rozbudowane oprogramowanie, które umożliwia lokalizowanie, przewidywanie i śledzenie rozprzestrzeniania się wirusa. Silnik BlueDot gromadzi dane o ponad 150 chorobach i zespołach zarejestrowanych na całym świecie. Oprócz dostarczania oficjalnych danych może również wydobywać informacje o miliardach pasażerów podróżujących różnymi trasami; dane dotyczące populacji ludzi i zwierząt; oraz informacje od dziennikarzy, mediów i pracowników służby zdrowia. Przetwarza informacje poprzez ręczną klasyfikację danych i tworzy taksonomię do dalszej działalności edukacyjnej. Wprowadzając odpowiednie dane wejściowe, dostarcza przydatnych danych na określony temat lub sprawę, a także jest w stanie wytworzyć odpowiednie ślady dla potrzebnych dochodzeń. Może również prezentować najnowsze lub aktualne aktualizacje, aby ostrzec o kłopotliwych okolicznościach, szukając w ten sposób działań zapobiegawczych. W odniesieniu do ataku COVID-19 system BlueDot wykrył i słusznie oznaczył miasto Wuhan jako centrum epidemii wirusa. Przewidział nawet listę miejsc, takich jak Bangkok, Tokio, Phuket, Seul, Tajpej i Singapur, jako obszarów podatnych na rozwój infekcji. To nie pierwszy raz; zaangażowanie tej technologii było oczywiste; nawet w poprzednich latach podczas epidemii wirusa Zika było to w to zaangażowane.

    Chatbot: W ostatnim czasie WhatsApp stał się rutyną w życiu każdego człowieka, więc WHO wybrało WhatsApp i uruchomiło chatbota, który daje wcześniejsze informacje dotyczące COVID-19. W narzędziu często pojawiają się aktualizacje, które dostarcza najnowsze wiadomości w formie dźwiękowej lub tekstowej dotyczące COVID-19. Użytkownicy mają możliwość podzielenia się poglądami lub opiniami w dowolnym momencie na temat pandemii COVID-19. Takie podejście ułatwiło zachowanie przejrzystości wśród miliardów ludzi na całym świecie, aby mieć jednolitą i istotną informację o chorobie. Ten chatbot zawiera najbardziej zaawansowane informacje związane z objawami, środkami zapobiegawczymi oraz różnicą między objawami zwykłej grypy a COVID-19. Ponadto zapewnia aktualizacje na żywo dotyczące liczby osób cierpiących na koronawirusa, aby pomóc rządowi, pracownikom służby zdrowia, opiekunom i decydentom, co pomaga w skutecznym tworzeniu polityki.

    Aplikacja Aarogya Setu: Ministerstwo Elektroniki i IT rządu Indii opracowało aplikację, która ma na celu uświadomienie obywatelom sytuacji pandemicznej. Aplikacja zawiera czynniki ryzyka i kroki zapobiegawcze, aby uniknąć infekcji. Pomaga użytkownikom przejść samoocenę, aby poznać swój stan zdrowia. Ta aplikacja jest dostępna odpowiednio w Google Play i App Store na Androida i iOS.

    Jak działa aplikacja: Aarogya Setu wykorzystuje śledzenie przez Bluetooth, aby informować użytkownika o wystarczającej ilości informacji, na wszelki wypadek, jeśli zbliży się do kogoś, kto ma pozytywny wynik testu na COVID-19. Funkcje Bluetooth i lokalizacji na żywo umożliwiają śledzenie indywidualnej lokalizacji i generowanie wykresu społecznościowego, który pokazuje interakcję z kilkoma osobami. Po zakończeniu procesu instalacji użytkownik musi zezwolić swoim czujnikom Bluetooth i lokalizacji na aktywację i ustawić uprawnienia do ciągłego śledzenia. Aplikacja przeprowadza również ankietę dotyczącą COVID-19 i zadaje różne pytania związane z objawami osobistymi. Raport jest przekazywany rządowi w celu ich aktualizacji. Podczas zbierania danych aplikacja wykrywa również poruszającą się osobę zarażoną i natychmiast ostrzega użytkownika, aby się odizolował i był bezpieczny. Dane pozostają poufne z dostępem do rządu i samego użytkownika.

    ROLA AI W ŚLEDZENIU I PRZEWIDYWANIU COVID-19

    Okoliczności pandemii COVID-19 osiągnęły do tej pory poziom krytyczny, co wymaga pomocy intelektualnej, aby odpowiedzieć na tę sytuację. Po osiągnięciu etapów ostrzegawczych, różne narody we współpracy z WHO zdecydowały się wdrożyć różne strategie, dążąc do ratowania ich pozycji. Aby mieć kontrolę nad tymi środkami, naukowcy wykorzystali sztuczną inteligencję, która pomogła w wyraźnych odkryciach ścieżki wirusa. Kilka krajów na całym świecie wdrożyło je w odpowiedzi na katastrofalną pandemię.

    Uczenie maszynowe

    Uczenie maszynowe jest jedną z takich strategii, która wydobywa sztuczny intelekt do rozwiązania problemu. To uczenie maszynowe jest czymś związanym z danymi, które mogą być zbierane z różnych źródeł przy użyciu różnych środków. Jest rozszerzony na proces głębokiego uczenia się, w którym system może myśleć sam, pobierając dane z wielu sieci. Podstawowym celem uczenia maszynowego jest wykorzystanie danych do zidentyfikowania głównego źródła rozprzestrzeniania się i zerwania możliwych połączeń w celu zakończenia łańcucha. Proces ten obejmuje różne algorytmy, które reagują na podstawie wcześniejszych danych zapisanych w bibliotece.

    Technologia BlueDot

    Kanadyjski rząd jako najwcześniejszy krok wprowadził technologię Blue Dot, która jest podejściem do uczenia maszynowego, w którym rosnące symptomatyczne przypadki COVID-19 są porównywane z istniejącymi danymi, aby znaleźć względny wzorzec. Technologia ta wykorzystuje przeszłe rekordy danych i analizuje czynniki podobieństwa między nimi. Model ten pokazuje zakres rozwoju i obszary, które są bardziej dotknięte. Jako rozszerzenie można przeprowadzić kompleksową prekognicję w celu wizualizacji gorących punktów podatnych na koronawirusa, dzięki czemu można uzyskać znaczny poziom czujności.

    ANALIZA PRZESTRZENNA

    Pozyskując informacje geograficzne, można łatwo upolować wzorzec rozprzestrzeniania się wirusa. Ta analiza przestrzenna koncentruje się na ludziach ograniczonych do określonej lokalizacji. Wnioskowanie metody bayesowskiej ułatwia wyznaczenie współczynnika porażenia dotyczącego czasu i przestrzeni. Model Johna Hopkinsa to platforma, która na żywo prezentuje różne scenariusze epidemii w różnych krajach. Przetwarzanie w języku narodowym to narzędzie sztucznej inteligencji, które wykorzystuje różne języki do kodowania danych i przetwarzania ich w celu uzyskania w języku naturalnym. Konwertuje tekst do formatu strukturalnego w celu dalszej analizy i wyświetlania wyników. Zbieranie danych o podróżach to kolejne ważne narzędzie, które należy wziąć pod uwagę jako przyczynę rozprzestrzeniania się w wyniku migracji. Jest to idealny sposób na ustalenie możliwych przypadków i pomoc we wczesnym pomiarze ryzyka. Ten rodzaj analizy jest reprezentowany w postaci diagramu Sankeya zaprojektowanego przez WHO, który przedstawia przepływ łańcucha w wielowymiarowych wizjach na różnych etapach. W celu uzyskania lepszej wiedzy na temat wzorca rozprzestrzeniania się wirusa stosuje się analizę wykresów z wykorzystaniem danych historycznych, która rozpoznaje zasięg epidemii i zauważa, gdzie dzieje się więcej. Akademia kodowania w Singapurze opracowała mapę sieci, aby wyobrazić sobie wpływ epidemii w różnych częściach kraju. Na lotniskach podczas wyjazdów wdrażany jest system kontroli, gdzie wprowadzane są inteligentne czujniki. Czujniki te sprawdzają nietypowe warunki ciała, aby wykryć wszelkie pozytywne oznaki COVID-19.

    Enter Telco Analytics

    Zaangażowanie gadżetów elektronicznych to sprytny pomysł na indywidualne śledzenie. "Enter Telco Analytics" to nowatorska technologia, która może zbierać informacje o prawie wszystkich kategoriach osób. Każde urządzenie elektroniczne jest zaprogramowane do zapisywania kilku szczegółów użytkowników, które będą śledzone w celu monitorowania ruchu, działania i zachowań społecznych w celu sprawdzenia nieprawidłowości. Wykorzystuje różne gadżety elektroniczne, takie jak tablety, smartwatch, fit-band, smartfony i inne powszechnie dostępne urządzenia. Co więcej, jest oczywiste, że przeciętnie każdy człowiek tego świata nosi przy sobie co najmniej jedno urządzenie. Smartfon to eleganckie narzędzie, bo oprogramowanie wspiera lokalizowanie czujników i na szczęście znajduje się w niemal każdej kieszeni. To nie mniej niż biblioteka, która zawiera kilka informacji. Tak więc śledzenie czyjegoś smartfona może zliczać szczegóły jego nazwiska, lokalizacji, kontaktów i historii przeglądania, a nawet może oceniać zachowanie osoby. Istnieje proces zwany podsłuchiwaniem, który może śledzić prywatne informacje, takie jak historia przeglądania, czaty i połączenia od osoby w nagłych wypadkach. Zwykle reguluje to organ regulacyjny, znany jako ogólne rozporządzenie o ochronie danych, które obowiązuje w prawie wszystkich krajach

    Media społecznościowe

    Pojawienie się mediów społecznościowych, takich jak Facebook, YouTube, WhatsApp, Instagram i Twitter, może służyć komunikowaniu powagi okoliczności i wzbudzaniu świadomości wśród widzów. Wielu programistów opracowuje modne aplikacje do wykrywania wskazówek zainfekowanych osób. Aarogya Setu to jedna z takich popularnych aplikacji w Indiach, która rozpoznaje tę aktywność. Opracowuje się znacznie więcej takich aplikacji, aby zwiększyć dostępność potrzeb i usług dla społeczeństwa. Nadzór CCTV jest prawdopodobnie interesującym pomysłem na zbadanie sposobu transmisji. Dzięki niemu alarmy epidemiczne są monitorowane, a natychmiastowe działania zapobiegawcze mogą być skalowane. Ciągłe badanie danych medycznych może zobrazować przebieg prognoz epidemicznych. W przeciwieństwie do wyżej wymienionych autentycznych aplikacji, istnieje również kilka fałszywych twierdzeń o rozpowszechnianiu AI w mediach. Za pośrednictwem mediów społecznościowych ludzie publikują swoje opinie jako wnioski bez umieszczania odpowiednich dowodów, co wprowadza ludzi w błąd, a nawet wywołuje nadmierne podekscytowanie i panikę. Ostatnio w Internecie rozprzestrzeniła się propaganda, która twierdziła, że Microsoft opracował biochip do śledzenia korony, jak donosi Reuters. Pomimo wielu korzystnych aspektów, nadal wiele trzeba wnieść do wykorzystania sztucznej inteligencji do regulowania ciężkości stanu, zamiast narażania go na szwank.

    AI W DIAGNOZIE COVID-19

    Wykrycie COVID-19 jest najważniejszym krokiem do ograniczenia przenoszenia wirusa i uniknięcia jego progresji do kolejnych etapów transmisji. Głównym problemem tej choroby jest okres jej rozwoju, który trwa około 2-14 dni. Będąc niewykrytym przez tak długi czas, wirus stwarza większe ryzyko, przez co jest bardziej prawdopodobne, że przeniesie chorobę od jednego do zbyt wielu. Dlatego skuteczna diagnoza i izolacja są jedynymi kluczami do zachowania bezpieczeństwa i zapobiegania rozprzestrzenianiu się chorób. Testy można przede wszystkim podzielić na dwa typy, tj. wykrywanie obecności wirusa lub białek wirusowych w organizmie i poszukiwanie obecności przeciwciał w organizmie wytwarzanych w odpowiedzi na chorobę.

    Reakcja łańcuchowa polimerazy z odwrotną transkryptazą w czasie rzeczywistym (rrt-Pcr)

    Metoda łańcuchowej reakcji polimerazy z odwrotną transkryptazą w czasie rzeczywistym (rRT-PCR) jest stosowana do jakościowego wykrywania kwasu nukleinowego SARS-CoV-2 w próbkach podejrzanej populacji. Ten test można wykonać w dwóch różnych formatach, tj. formacie pojedynczego plex, w którym trzy testy są wykonywane oddzielnie, a drugi to format multi-tiplex obejmujący pojedynczą reakcję i konfigurację oprogramowania. Do amplifikacji wyników wykorzystuje się oprogramowanie QuantStudio-7, a obserwując aktywność fluorescencyjną (dzięki zastosowanym w teście barwnikom) w różnych cyklach reakcji polimerazy, obserwuje się zróżnicowanie między materiałami nukleinowymi gospodarza i wirusa. W tym samym teście algorytmy za pośrednictwem sztucznej inteligencji, takie jak rzadko przeskalowana regresja liniowa kwadratowa (SRLSR), redukcja atrybutów za pomocą wieloobiektowego optymalizatora zespołu dekompozycji (ARMED), selekcja cech ze wzmocnieniem gradientowym (GFS) i rekursywna eliminacja cech ( RFE) razem są stosowane w celu uzyskania szybszych wyników i lepszych potwierdzeń. Test ten był używany przede wszystkim w wykrywaniu infekcji u pacjentów, ale jest to proces czasochłonny. Tak więc, aby zaspokoić potrzeby szybkich raportów diagnostycznych, kilka firm rozpoczęło prace nad nowatorskimi metodami testowymi, z których kilka zostało tutaj pokrótce omówione.

    Test wykrywania przeciwciał

    Jest to test wykorzystujący przeciwciała do wykrywania obecności wirusa w organizmie. Po wejściu choroby do organizmu w ramach odpowiedzi immunologicznej organizm wytwarza przeciwciała przeciwko antygenom wirusa. Systemy oparte na sztucznej inteligencji pomagają w ustaleniu tożsamości przeciwciał, co pomaga śledzić wzory wirusa chorobotwórczego, a tym samym jego konformację.

    Amplifikacja izotermicznych kwasów nukleinowych

    Amerykańska Agencja ds. Żywności i Leków (FDA) zatwierdziła niedawno badanie amplifikacji izotermicznego kwasu nukleinowego, które jest podejściem opartym na sztucznej inteligencji. Jest preferowany zamiast PCR w celu uzyskania pozytywnych wyników w ciągu 5 minut, a negatywnych w ciągu 18 minut i może być dobrą alternatywą dla RT-PCR w celu zwiększenia wydajności testowania

    Analiza obrazowania CT

    W tej technice raporty z tomografii komputerowej klatki piersiowej pacjentów z zapaleniem płuc od sierpnia 2016 r. do lutego 2020 r. zostały zebrane i porównane z pacjentami z COVID-19 za pomocą oprogramowania U-net i COVnet, które skanowały każdy szczegół i dostarczały wnioskowania. Obrazy radiologiczne uzyskane podczas testu były dalej przetwarzane przez AI w celu oceny ilościowej. Przedstawione wyniki wykazują dokładność 98,2%, a swoistość 92,2%. Kilku badaczy zaleciło również użycie sztucznej inteligencji do odczytywania skanów CT pod kątem możliwego uszkodzenia płuc, ponieważ może to skrócić wymagany czas z dużą dokładnością. Zalecono jednak wykonanie testu RT-PCR później w celu ostatecznego potwierdzenia choroby.

    Detekcja za pomocą czujników smartfonów

    Współczesne smartfony są wyposażone w kilka czujników, takich jak czujnik zbliżeniowy, kamera, mikrofon, temperatura, odcisk palca, czujniki bezwładnościowe itp. do wykonywania różnych operacji. Dzięki wykorzystaniu tych funkcji w kilku zastosowaniach diagnostycznych, takich jak użycie mikrofonu do rejestrowania wzorca kaszlu, podobne parametry można zestawiać i wysyłać do wstępnie opracowanego, zainstalowanego algorytmu, który może wzmacniać i dostarczać sugestie dotyczące obecności lub braku infekcji. Ten rodzaj analizy jest preferowany do wstępnych badań w celu wykrycia śladów choroby i dalszego przetwarzania w celu potwierdzenia. W praktyce jednak są większe szanse na zakłócenia techniczne, a raporty mogą nie być jasne.

    AI W LECZENIU COVID-19

    Ponieważ liczba ofiar Corony z dnia na dzień osiąga ogromne rozmiary, obiecująca terapia jest teraz niezbędna, nie kosztując więcej życia. W prawie 150 krajach kilka firm walczy o to, aby dostarczyć to, co najlepsze. W tych trudnych czasach wykorzystanie sztucznej inteligencji wydaje się być drzwiami nadziei. Sztuczna inteligencja pośredniczy we wspomaganym komputerowo projektowaniu leków, które programuje strukturę leku i symuluje tysiące cząsteczek w krótkim czasie. Do walki z COVID-19 wymagane jest narzędzie do zwalczania wirusów. Opracowanie i wprowadzenie na rynek nowej szczepionki wydaje się zbyt trudnym zadaniem do natychmiastowego wykonania; w związku z tym podejmowane są próby spojrzenia wstecz na istniejące szczepionki lub środki przeciwwirusowe, tj. ich ponowne przeznaczenie, aby czerpać z tego korzyści. W tym celu przeanalizowano tło historyczne różnych chorób, aby rozpoznać patogen, który ma podobną historyczną zaraźliwość. Analizując różne odkrycia, zaobserwowano, że obecny szczep atakujący jest łagodnie neutralizowany przez leki hamujące malarię, takie jak hydroksychlorochina. Kiedy w badaniach klinicznych ten lek był skierowany przeciwko Coronie, odpowiedzi były skuteczne i wykazały znaczny wpływ na proces zdrowienia. Jednak powrót do zdrowia jest znacznie niższy u pacjentów w podeszłym wieku w porównaniu z młodszymi, co również można uznać za nieznaczne. Ostatnie badania potwierdziły, że środek przeciwwirusowy remdesivir przyniósł obiecujące rezultaty, gdy wypróbowano go na ofierze Corony. Lek Remdesivir został opracowany przez Gilead Sciences przy użyciu mechanizmu wspomaganego komputerowo w ramach sztucznej inteligencji. Rząd USA przeprowadził badania kliniczne tego leku na małpach zakażonych koroną. Podczas testów małpy podzielono na dwie grupy, z których jedna była odurzona, a inne nie. W porównaniu z etapami końcowymi wzorce oddychania obu grup były różne. Małpy, które zażywały lek, miały sprawniejszy wzorzec oddychania niż inne. Eksperyment wykazał, że środek przeciwwirusowy, remdesivir, do pewnego stopnia zniszczył wirusa. Jednak obecnie trwają badania nad tym lekiem u istniejących pacjentów, aby sprawdzić najbliższą możliwość i ustalić jego potencjał jako strategii leczenia COVID-19. Innym zachęcającym lekiem, który jest badany do walki z koronawirusem, jest gimsilumab, który jest sztucznie zsyntetyzowanym przeciwciałem monoklonalnym, które może pokonać wirusa poprzez immunoterapię. Firma farmaceutyczna Roivant Sciences po raz pierwszy przeprowadziła badania na ludziach, aby określić siłę działania gimsilumabu przeciwko koronawirusowi. Lek okazał się skuteczny podczas badań nieklinicznych, a obecnie przeszedł przez dwa etapy badań klinicznych. W celu zaspokojenia obaw dotyczących bezpieczeństwa i tolerancji lek przeszedł test 1. fazy. Ten lek ma na celu modulowanie warunków odpornościowych, które powodują destrukcyjny mechanizm wirusa

    AI W KONSERWACJI DOTYCZĄCYCH OBSZARÓW I DASHBOARD

    Gdy tempo rozprzestrzeniania się choroby jest szybkie, przepływ informacji musi być szybszy niż w innych przypadkach. Do dostarczania danych wykorzystywane są pulpity nawigacyjne, które dostarczają prawidłowych i istotnych informacji o wynikach koronawirusa z różnych części świata.

    Centrum nauki o systemach i inżynierii na Uniwersytecie Johnsa Hopkinsa (JHU CSSE)

    Dashboard JHU CSSE został opracowany przez Lauren Gardner (epidemiolog) i członków jej zespołu, który jest wiodącym dashboardem z blisko 140 milionami wyświetleń, a także platformą dla setek artykułów i mediów społecznościowych. Pulpit nawigacyjny JHU CSSE zapewnia interaktywną mapę, która stale lokalizuje przypadki potwierdzone przez COVID-19 na całym świecie, wraz z przypadkami zgonu i powrotu do zdrowia. Od czasu do czasu widzowie mogą mieć łatwy dostęp do zaktualizowanych danych. To oprogramowanie jest kontrolowane przez pięć różnych organów, aby pokazać zebrane dane:

    •  Światowa Organizacja Zdrowia
    •  Amerykańskie Centra Kontroli i Zapobiegania Chorobom
    •  Narodowa Komisja Zdrowia Chińskiej Republiki Ludowej
    •  Europejskie Centrum Zapobiegania i Kontroli Chorób
    •  Chińskie zasoby medyczne online

    Głównym ograniczeniem tego pulpitu nawigacyjnego jest to, że nie przechowuje on wizualizowanych danych z poprzednich dni. Panel przedstawia jedynie wykres osi czasu przedstawiający całkowitą liczbę potwierdzonych przypadków i przypadków odzyskanych, ale widzowie nie są w stanie pobrać i wyświetlić szczegółowych migawek mapy.

    Pulpit Światowej Organizacji Zdrowia (WHO)

    WHO, główny organ koordynujący i kierujący zdrowiem na całym świecie, wdrożył środki w celu zapewnienia ciągłego nadzoru w celu zwalczania COVID-19. 26 stycznia 2020 r. w Chinach przygotował pulpit ArcGIS dla COVID-19, który oznacza, mapuje i wyświetla całkowitą liczbę przypadków zakażonych koroną wraz ze zmarłą liczbą osób. Początkowo zaobserwowano niezwykłą różnicę między dwoma pulpitami nawigacyjnymi JSS CSSE i WHO, ponieważ oba skupiały się na różnych obszarach, w których WHO opierała się na przypadkach potwierdzonych laboratoryjnie, podczas gdy JHU CSSE twierdziło na podstawie diagnozy poprzez objawy i obrazowanie klatki piersiowej. Później oba te pulpity nawigacyjne zaczęły działać zsynchronizowane i pokazywać podobną liczbę przypadków. Panel WHO wyświetla krzywą, która przedstawia współczynnik infekcji od daty do daty. Dostarczona krzywa skumulowana i krzywa epidemii przekazują istotne informacje dotyczące postępu epidemii. Menu w prawym górnym rogu zawiera dodatkowe ważne szczegóły dotyczące COVID-19 oraz interaktywną mapę, która wyjaśnia kontekst COVID-19 w sytuacjach kryzysowych monitorowanych przez WHO. Pulpit nawigacyjny WHO jest aktualizowany wiele razy dziennie automatycznie za pomocą serwera ArcGIS GeoEvent.

    Aplikacja China Coronavirus Close Contact Detector: Gdy rząd wprowadził ograniczenie podróży i spotkań towarzyskich, więc w celu inicjowania i monitorowania działań na rzecz dystansu społecznego, rząd Chin współpracował z Narodową Komisją Zdrowia i China Electronic Technology Group Corporation i opracował aplikację zwany "detektorem bliskiego kontaktu". Ta aplikacja nadzoruje użytkownika, jeśli jakakolwiek zarażona osoba przechodzi z pobliskiego i ostrzega użytkownika, aby został ostrzeżony, jeśli osoba zarażona jest blisko niego. Ta aplikacja wykorzystuje dane od władz publicznych (dane z rezerwacji lotów, autobusów i pociągów) i może śledzić ruch osoby. Wykorzystując swoje dane, sprawdza, czy użytkownik ma bliski kontakt z jakąkolwiek potwierdzoną lub podejrzaną sprawą. Ta aplikacja informuje użytkownika na podstawie jego lokalizacji i ostatnich ruchów. Dostęp do tej aplikacji można łatwo uzyskać za pośrednictwem najpopularniejszych aplikacji mobilnych używanych w Chinach, takich jak Alipay, WeChat i QQ. W Kantonie (Chiny) wdrożony jest również dobrowolny system, który w przypadku zdiagnozowania u osoby pozytywnej na koronawirusa na etapach po testach, pozwala prześledzić jej rutynę transportową, aby powiadomić powiązanych pasażerów wsiadających do tego samego transportu publicznego z osoba zarażona. Od 17 lutego 2020 r. na każdej stacji w Kantonie wyświetlany jest kod QR, który pasażerowie muszą raz zeskanować po wejściu do pociągu. Następnie muszą wypełnić szybki formularz online, który pojawia się na ich telefonie komórkowym, który zawiera informacje takie jak numer identyfikacyjny, płeć, stacja początkowa i miejsce docelowe. Informacje te są przekazywane rządowi w trybie online, a jeśli ktoś potwierdzi pozytywne objawy koronawirusa po testach i ma historię podróży w tej aplikacji, współpasażerowie są ostrzegani i łatwo śledzeni.

    AI W ZAKRESIE BEZPIECZEŃSTWA SPOŁECZNEGO / NADZORU / ZAPOBIEGANIA COVID-19

    Ponieważ COVID-19 urósł do poziomu pandemii, zapotrzebowanie na drony i roboty gwałtownie wzrosło ze względu na potrzebę wdrożenia ścisłych środków dystansowania społecznego. Podobnie jak w przypadku chorób zakaźnych, wyzwaniem jest ograniczenie ludzi do spotkań towarzyskich; stąd monitorowanie odgrywa kluczową rolę, a drony doskonale nadają się do takiej roli. Drony stale monitorują osoby pod kątem noszenia masek lub unikania zgromadzeń publicznych, a nawet czynności dezynfekujących odbywających się w miejscach publicznych. Firma Micro Multi Copter z siedzibą w Shenzhen używała swoich dronów do przewożenia leków i materiałów do kwarantanny w całym mieście, a także do świadczenia usług opieki nad pacjentem bez angażowania pracowników służby zdrowia. Pomogło to pracownikom służby zdrowia zmniejszyć ryzyko rozprzestrzeniania się. Co więcej, mogą być również wykorzystywane do czynności związanych z czyszczeniem i sterylizacją na zakażonych oddziałach. W centrum gastronomicznym firma Pudu Technology zastosowała swoje roboty w 40 szpitalach do celów czyszczenia i sterylizacji. COVID-19 to SARS, który jest wysoce zaraźliwym wirusem, który wymaga ciągłego nadzoru w celu kontrolowania rozprzestrzeniania się. Głównym powodem, dla którego COVID-19 stał się globalnym zagrożeniem, jest ludzka migracja. Kanadyjski startup AI BlueDot (startup z Toronto) intensywnie wykorzystywał uczenie maszynowe i przetwarzanie języka naturalnego do rozpoznawania wirusa, śledzenia go i zgłaszania rozprzestrzeniania się COVID-19 znacznie szybciej niż WHO i amerykańskie Centrum Kontroli i Zapobiegania Chorobom. Dzięki zastosowaniu tej technologii można przewidzieć w przyszłości choroby odzwierzęce, biorąc pod uwagę zmiany klimatyczne i działalność człowieka jako zmienne. Ogier. AI, która jest kanadyjską firmą badawczo-rozwojową AI, połączyła swoje możliwości przetwarzania języka naturalnego z "wielojęzycznym wirtualnym agentem opieki zdrowotnej", który może odpowiadać na pytania związane z COVID-19, a także zapewniać wiarygodne informacje i jasne wytyczne . Może również zalecić środki ochrony, szukać objawów i monitorować je. Doradza osobom, czy muszą izolować się w domu, czy też szukać badań przesiewowych w szpitalu (Weblink7). Inne oprogramowanie oparte na sztucznej inteligencji, znane jako InferVISION, informuje, że pacjenci z objawami zapalenia płuc są podatni na COVID-19. System AI jest zasilany przez pakiety SDK Clara firmy NVIDIA, które są wykorzystywane w aplikacjach do obrazowania i genomiki oraz zoptymalizowane pod kątem opieki zdrowotnej. Naukowcy z National Tsing Hua University i naukowcy z Harvard University′s School of Public Health na Tajwanie współpracują z Facebookiem, aby śledzić historię podróży zarażonych osób. W celu podjęcia środków zapobiegawczych przeciwko COVID-19 niektóre firmy oferują bezpłatne sesje online i seminaria internetowe, podczas gdy inne promują podstawowe narzędzia (Weblink9). W Izraelu dwa szpitale poradziły sobie z zakażeniem COVID-19, zmniejszając narażenie pracowników służby zdrowia na zarażonych pacjentów. CLEW (firma zajmująca się analizą predykcyjną wykorzystującą sztuczną inteligencję) wykupiła rozwiązanie, tj. CLEW ICU (Tele-ICU), które było ćwiczone w Sheba Medical Center i Ichilov Hospital w Tel Aviv Sourasky Medical Center. Wykorzystał sztuczną inteligencję do analizy wymaganej rozbudowy pojemności oddziału intensywnej terapii (ICU), a także wykładniczo zasobów. Algorytmy zostały przeszkolone pod kątem zaawansowanej identyfikacji pogorszenia stanu oddechowego, przewidywania ciężkości choroby za pomocą zdalnego centrum dowodzenia. Te duże jednostki OIOM mogą wykorzystywać technologię telemedyczną do pomocy pacjentom z odległych obszarów za pomocą scentralizowanego polecenia. W ten sposób CLEW potwierdza, że jej modele uczenia maszynowego ułatwiają pracę na OIOM-ie, ogólne obciążenie pracą, a także zmniejszają narażenie świadczeniodawców na kontakt z zakażonymi pacjentami (Weblink10). Inteligentna dezynfekcja i tunel sanitarny: Zostały zaprojektowane w celu zapewnienia dezynfekcji i maksymalnej ochrony ludzi podczas przechodzenia przez tunel przez 15 sekund. Mogą one pomóc społeczności w walce z COVID-19. Jego prototyp został zainstalowany w indyjskim stanie Tamil Nadu na targu, na którym osoby przechodzące przez tunel spryskiwały 1 ppm roztworem podchlorynu sodu w celu ich odkażenia

    WNIOSEK

    Sztuczna inteligencja staje się ważnym narzędziem w sektorze opieki zdrowotnej i ma jeszcze wiele do zaoferowania w przyszłości. Wcześniejsze wysiłki w diagnostyce i leczeniu chorób nie okazały się zbyt przekonujące; jednak stopniowo sztuczna inteligencja zaczęła wywierać wpływ również w tych dziedzinach. Chociaż jego rola w obecnej pandemii COVID-19 jest również w powijakach, nadal wydaje się, że obiecuje być częścią ery, w której wszystkie sektory będą zasadniczo obejmowały jego zastosowania. Poważnym problemem związanym ze sztuczną inteligencją jest prywatność danych. Ramy opieki zdrowotnej wymagałyby kontynuowania nadzoru obywateli opartego na sztucznej inteligencji nawet po zakończeniu pandemii, a zatem troska o prywatność danych wydaje się uzasadniona. Dlatego kluczowe staje się, aby organy regulacyjne zachowywały najwyższą ostrożność w przetwarzaniu danych i zaprzestały ich niewłaściwego wykorzystywania.