Wpis z mikrobloga

#it #programista15k #programowanie #sztucznainteligencja #matematyka #logika

Mirki, post dla zainteresowanych AI i podstawami matematyki. Robię prywatne badania nt. wdrożenia logik nieklasycznych w komunikacji między agentami AI, zamiast prostych instrukcji lub promptów, albo jako część tychże. Integracja tych logik pozwala na tworzenie zaawansowanych, elastycznych i odpornych systemów AI, które lepiej odzwierciedlają złożoność rzeczywistych środowisk. Pokażę wam snippet do kawusi, czemu uważam to, za ciekawe.

Szybka definicja:

Logika nieklasyczna to zbiór systemów logicznych, które modyfikują lub rozszerzają zasady klasycznej logiki formalnej, aby lepiej modelować złożone, niepewne lub sprzeczne sytuacje. Wprowadzają one nowe wartości logiczne, operatory lub zasady wnioskowania, takie jak w logice rozmytej, modalnej, temporalnej czy parakonsystentnej. Dzięki temu umożliwiają bardziej elastyczne i realistyczne wnioskowanie w różnych dziedzinach, takich jak sztuczna inteligencja czy informatyka teoretyczna.

https://en.wikipedia.org/wiki/Non-classical_logic

Pracuję właśnie nad tworzeniem dobrych bibliotek do łatwego posługiwania się funktorami logik nieklasycznych. Jakich logik używam i jak (m.in):

1. Logika rozmyta - Wprowadza stopnie prawdziwości w zakresie od 0 do 1, pozwalając na wyrażanie nieprecyzyjnych informacji.

Przykład:

W inteligentnym systemie zarządzania ruchem drogowym, agenci reprezentują sygnalizatory świetlne. Wykorzystują logikę rozmytą do oceny natężenia ruchu jako "wysokie", "średnie" lub "niskie" z określonym stopniem przynależności. Na tej podstawie koordynują czas sygnalizacji, aby optymalizować przepływ pojazdów. System więc dynamicznie dostosowuje się do zmieniających się warunków.
Literatura:

Yager, R. R., & Filev, D. P. (1994). Essentials of Fuzzy Modeling and Control.

2. Logika modalna - Dodaje modalności, takie jak "koniecznie" i "możliwe", do klasycznej logiki.

Przykład:

W zarządzaniu zasobami chmury obliczeniowej, agenci reprezentują serwery i usługi. Komunikują swoje potrzeby i możliwości, używając modalności: "Muszę zwiększyć moc obliczeniową" lub "Mogę udostępnić zasoby". To pozwala na dynamiczne przydzielanie zasobów w zależności od obciążenia. Dawać by to mogło efektywne wykorzystanie mocy obliczeniowej i System łatwo adaptuje się do zmieniających się potrzeb.

Wooldridge, M. (2000). Reasoning about Rational Agents.

3. Logika temporalna - Uwzględnia aspekt czasu, umożliwiając wyrażanie zdań dotyczących przyszłości i przeszłości

Przykład:

W kontroli lotów dronów, agenci planują swoje trasy z uwzględnieniem ograniczeń czasowych: "Muszę przelecieć przez punkt P przed czasem T1". Używają logiki temporalnej do koordynacji lotów, unikając kolizji i zapewniając terminowe wykonanie misji. Umożliwi to np: Unikanie konfliktów w przestrzeni powietrznej czy Optymalne planowanie zadań w czasie. Precyzyjne zarządzanie czasem jest kluczowe w aplikacjach krytycznych dla bezpieczeństwa.

Manna, Z., & Pnueli, A. (1992). The Temporal Logic of Reactive and Concurrent Systems.

4. Logika parakonsystentna - Pozwala na logiczne wnioskowanie w obecności sprzeczności bez wyprowadzania dowolnych wniosków (unikanie paradoksu eksplozji).

Przykład:

W systemie wywiadu finansowego, agenci otrzymują sprzeczne informacje z różnych źródeł. Zamiast je odrzucać, wykorzystują logikę parakonsystentną do analizy: "Firma X zanotowała zysk" vs. "Firma X odnotowała stratę". Integrują dane, aby wyciągnąć spójne wnioski. Daje to: Odporność na sprzeczności: System funkcjonuje mimo konfliktujących danych. Uwzględnienie pełnego zakresu informacji i Pozwala na tworzenie niezawodnych systemów w środowiskach o wysokiej niepewności.

Literatura:

Carnielli, W. A., & Coniglio, M. E. (2016). Paraconsistent Logic: Consistency, Contradiction and Negation.

Oczywiście to tylko proste przykłady wykorzystania tego rozwiązania. Jest ich ogrom. A że magisterkę pisałem nt. semantyk logiki modalnej i doktorat z AI, to dość mnie to fascynuje. Może startup założę na ten temat jak będę miał czas. Zobaczymy. Ktoś tutaj zna się na logikach nieklasycznych?
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Ktoś tutaj zna się na logikach nieklasycznych?


@JamesJoyce: Yyyyy, parę lat temu kupiłem książkę "Hierarchie systemów logiki parakonsystentnej" Janusza Ciuciury i dalej czekam na motywację do jej przeczytania :)
  • Odpowiedz
@JamesJoyce intuicja mi podpowiada, że to nadal nie rozwiąże problemu halucynacji agentów. Niemniej, interesujący koncept i sam spróbuję zewaluowac na nich jakieś swoje use casy.

Myślę, że może cię zainteresować moją obserwacją nt halucynacji agentów AI:
Kiedyś robiłem dość żmudną ewaluacje agentów oceniających czy zadanie spełnia założenia zasady SMART. Miałem ok 80 zadan i dla każdego wykonywałem 5x taki uproszczony RAG. To, co mi się rzuciło w oczy, to fakt, że
  • Odpowiedz
  • 0
@tylkosieturozgladam: całkowicie nie, ale zmnimalizuje przy użyciu odpowiednich logik i promptów.

Czyli stan początkowy agenta mocno wpływa na jego późniejsze zachowanie, niezależnie od promptowania. Ciekawe. Ale poprawa agentów, to ogromna ingerencja w całe ich funkcjonowanie. Może parafrazowanie i check? Do prompta dodajesz sparafrazuj i pozniej weryfikujesz parafraze, czy zrozumial?
  • Odpowiedz
@JamesJoyce robiłem to - efekty niby lepsze ale nadal mało satysfakcjonujące. CoT już rok temu próbowałem, a o1-preview wcale sobie tak dobrze nie radzi z klasycznym strawberry problem.

Istnieje teoria, że każdy model ML to po prostu kompresja. Może tokenizacja niektórych promptow kompresuje sens zbyt mocno?
  • Odpowiedz