Problem stabilizacji i skalowania systemu wieloagentowego

Systemy agentowe, w których zmienia się w czasie liczba aktualnie działających agentów, borykają się z problemem stabilizacji oraz skalowalności.
Problem stabilizacji – liczba agentów w systemie zmienia się w czasie, jednak stabilność systemu wymaga, aby ich liczba była ograniczona. Ograniczenie to powinno definiować nie tylko maksymalną liczbę agentów, ale również minimalną.
Problem skalowalności – problem polega na dobraniu odpowiedniej liczby agentów do wielkości zadania. Podejście agentowe umożliwia precyzyjniejsze skalowanie dzięki doborowi odpowiedniej ilości agentów konkretnego typu. Zbyt wielka liczba agentów może sprawić, że zasoby maszyny (pamięć, czas procesora) są w głównej mierze przeznaczane na podtrzymywanie przy życiu agentów, a nie na ich pracę.
Jak radzić sobie z tymi problemami? W celu poradzenia sobie z powyższymi problemami, trzeba zająć się poniższymi kwestiami:
Utrzymanie minimalnej liczby agentów – należy utrzymać minimalną liczbę agentów, którzy mogą generować agentów.
Ograniczenie maksymalnej liczby agentów:
  • Liczba niektórych agentów może być stała.
  • Usuwać nadmiarowych agentów:
    • Droga samolikwidacji agenta, np. poprzez energię życiową agenta zwiększaną za każdym sukcesem, a zmniejszaną z czasem oraz przez porażkę.
    • Droga likwidacji agenta przez inne agenty – należy zidentyfikować agentów, którzy są nadmiarowi:
      • Ustalić kryterium identyfikacji agentów do usunięcia.
      • Ustalić ilu agentów należy usunąć.
Np. ustalamy ilu jest agentów danego typu i ilu chcemy ich usunąć, a następnie usuwamy ich losowo lub tych z najmniejszą energią życiową.
Ograniczenie liczby generowanych agentów – można wyposażyć agenta generującego innych agentów w mechanizm określający celowość generowania nowego agenta. Mechanizm powinien uwzględniać:
  • Potrzebę generacji, która wynika z konieczności zapewnienia konkretnej funkcjonalności.
  • Ocenę możliwości generacji wynikającej z oceny chwilowej liczby agentów danego typu i potrzebnych zasobów.
Agent generujący powinien zatem obserwować otaczające go środowisko.
Koncepcja agentów bezrobotnych – można wprowadzić agentów, którzy poszukują zadań do wykonania (są bezrobotni), a następnie przekwalifikować ich w konkretny typ agenta, który może wykonać znalezione zadanie. Po wykonaniu zadania agent znowu staje się bezrobotny [2].

[2] Cetnarowicz K. – Paradygmat agentowy w Informatyce. Koncepcje, podstawy i zastosowania. Wydawnictwo Akademicka Oficyna Wydawnicza EXIT, Warszawa 2012.

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj /  Zmień )

Zdjęcie na Google

Komentujesz korzystając z konta Google. Wyloguj /  Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Wyloguj /  Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj /  Zmień )

Połączenie z %s