Kodyfikacja prawa i opieka społeczna versus logika rozmyta i algorytmy mrówkowe

Świat jest skomplikowany. Nigdy nie był zbyt prosty, ale im bardziej rozwijają się społeczeństwa tym bardziej zwiększa sie poziom skomplikowania. Kiedyś przeczytałem następujące porównanie, które zapadło mi w pamięć:

  • Teoria Pitagorasa: 24 słowa.
  • Ojcze nasz: 66 słów.
  • Prawo Archimedesa: 67 słów.
  • 10 przykazań: 179 słów.
  • Przemowa Gettysburska: 286 słów.
  • Deklaracja Niepodległości: 1.300 słów.
  • Rozporządzenie rządu Stanów Zjednoczonych Ameryki na temat sprzedaży kapusty: 26.911 słów.

Pomimo iż jest to żart bądź też legenda, a nie prawdziwe stwierdzenie faktu, na pewno w pewien sposób wyraża trend biurokracji do coraz większego komplikowania legislacji, co jestem pewien można zaobserwować z każdym zaawansowanym społecznie kraju. Myślę że ten trend zaczął się wraz z Kodeksem Napoleona, który w swoim czasie był wielkim osiągnięciem francuskiej rewolucji. Problem z tym kodeksem jest taki, iż jako że był tworzony przy współudziale i pod wpływem francuskich encyklopedystów, dąży do encyklopedycznego zdefiniowania wszystkich dozwolonych praw i niedozwolonych zachowań w międzyludzkich relacjach. To oczywiście sprawia, że przy rosnącym stopniu komplikacji relacji w społeczeństwie wzrasta długość samych praw i tym samym spada ogólna wydajność systemu.

Nasi politycy, kolejny raz zatrzymali się w rozwoju na 18-tym wieku, tak więc przybliżmy im to co przegapili w ostatnich 40 latach. Przede wszystkim przegapili teorie Lotfi Zdaeh’a o logice rozmytej. Logika rozmyta zajmuje się przybliżonym i pozwala na podejmowanie decyzji w oparciu o rozmyte/ciągłe zbiory wartości. Nie potrzebujemy definiować świata w sposób zero-jedynkowy. Możemy zdefiniować pośrednie stany między zły/ukarać/winny i dobry/wypuścić/niewinny. Ludzkie umysły nie pracują w sposób binarny i specjaliści od sztucznej inteligencji o tym wiedzą i używają logiki rozmytej w wielu sytuacjach.

Słyszałeś jak kiedyś ktoś powiedział „Powinni tego zabronić" lub może nawet sam tak mówisz? Nie potrzebujemy zabraniać - jeśli użyjemy logiki rozmytej możemy mieć „w pewnym sensie winny” zamiast zwykłych „winny”/”niewinny”. To pozwoliłoby nam na dużo efektywniejsze działanie niż w obecnym zero-jednynkowym systemie. Nie potrzebowalibyśmy specjalnego prawa dla sąsiada który uprzykrza wszystkim życie aby go ukarać ani specjalnych wyjątków dla tych co ukradli jedzenie, dlatego że byli głodni. Nie mielibyśmy sytuacji w których ktoś wykorzystuje społeczeństwo balansując na granicy prawa, bądź wykorzystując jakieś prawne wybiegi.

Nie mniej jednak sama logika rozmyta, bez kolejnych usprawnień może prowadzić do problemu w ferowaniu wyroków. Ponieważ używamy językowych zmiennych winny/w pewnym sensie winny/niewinny mamy problem z wymierzeniem odpowiedniej kary w każdym przypadku między najbardziej skrajnymi decyzjami (winny/niewinny). I dlatego potrzebujemy jeszcze jednej teorii z ostatnich lat z dziedziny sztucznej inteligencji a mianowicie inteligencji roju/tłumu (z angielskiego swarm intelligence - SI) i algorytmu mrówkowego (APO – od ant colony optimization). SI to inteligencja bazująca na kolektywnym zachowaniu wielu jednostek w zdecentralizowanym systemie i algorytm mrówkowy jest używany do odnajdywania optymalnego rozwiązania wewnątrz zbioru możliwych rozwiązań (definicje na podstawie Wikipedii). Skomplikowane? To przetłumaczmy to na subwersyjski: „kolektywne zachowaniu wielu jednostek w zdecentralizowanym systemie „ – to oczywiście nasz „system demokracji bezpośredniej”, „ zbiór możliwych rozwiązań” - winny/w jakimś sensie winny/niewinny bądź wymiar kar z naszego przykładu, „algorytm mrówkowy” - cóż, nawet nie potrzebujemy symulacji sztucznych mrówek, bo kolonia mrówek może być zastąpiona decyzjami pojedynczych członków każdej społecznej organizacji.

Tak się dziwnie składa, że jedna z demonstracji wykonalności tych założeń po raz kolejny przychodzi ze strony encyklopedystów - w końcu wszystkie objaśnienia w Wikipedii powstają poprzez powtarzające się sprawdzanie i ulepszanie wpisów i słownictwa do tego użytego poprzez społeczeństwo uczestniczące w tym projekcie. Tak więc i my możemy użyć tego procesu przy definicji naszego językowego zbioru zmiennych (poprawnego formułowania wyroków). Ale algorytm mrówkowy może być użyty też w sposób bardziej bezpośredni – możemy pozwolić każdemu wyrazić swoją opinię i początkowo będziemy mieć różnorodność wyroków i proponowanych kar. Po pewnym czasie, propozycje które najlepiej opisują odczucia społecznej organizacji będą miały więcej ocen na „tak” i mniej na „nie” i tym samym będą się pojawiać wyżej na liście propozycji i w końcu umożliwią podjęcie decyzji, która najlepiej odda odczucia społeczeństwa.
Logika rozmyta i ACO są także bardziej efektywne niż tradycyjne podejmowanie decyzji we wszelkich programach pomocy społecznej. Wiesz, że Polska wydaje więcej na utrzymanie administracji systemu opieki socjalnej niż na samych potrzebujących? Żeby było śmieszniej zarówno na to płacący jak otrzymujący pomoc uważają, że obecny system jest niesprawiedliwy, ponieważ bazuje na zdefiniowanym systemie warunków, które musi spełnić ubiegający się o pomoc by tę pomoc otrzymać, co czasem jest bardzo trudne do zaakceptowania (jakikolwiek limit dochodów minimalnych, będzie trudny do przełknięcia, dla kogokolwiek kto przekracza ten limit o złotówkę).

Jakie więc byłoby moje rozwiązanie tego problemu – spalmy to wszystko do gołej ziemi i zacznijmy od nowa opierając nasz system na rozmytym ocenianiu ubiegających się o pomoc poprzez ich sąsiadów za pomocą algorytmu mrówkowego. Przypatrzmy się temu przez moment: „spalmy do gołej ziemi” – nie sądzę by to wymagało wyjaśnienia, ale mogę dodać także „i każdego kto się temu sprzeciwi” żeby zabrzmiało trochę bardziej rewolucyjnie ;-) . „rozmyte ocenianie (...) przez sąsiadów” – zamiast wydawać pieniądze na pracowników społecznych, którzy analizują dane i podejmują decyzje, pozwólmy sąsiadom wyrazić co myślą o pomocy jakiejś osobie – oni znają rodzinę, wiedzą jakim samochodem jeżdżą, jak wydają te pieniądze które otrzymują (alkohol, narkotyki czy tez jedzenie dla dzieci). Prawdopodobnie znaczna część pomocy społecznej powinna pochodzić z budżetu lokalnego - w ten sposób możemy być pewni, że sąsiedzi dobrze się zastanowią komu dać te pieniądze zamiast rozdawać na prawo i lewo pieniądze otrzymane z góry. „algorytm mrówkowy” – myślę, że w tym momencie jest już dla was jasne, co przez to rozumiem – demokratyczny proces wyboru najlepszej decyzji poprzez jakąkolwiek organizację społeczną.

Polski