Struktura danych za 30 pytaniami
Interfejs testu SBTI wygląda prosto — 30 pytań, 3 opcje każde, klikaj i idź. Ale w sekundach między jednym „dalej" a następnym, backend już buduje model psychologiczny na twój temat.
Kluczowa sprawa: te 30 pytań nie jest rozmieszczonych losowo. Są precyzyjnie przypisane do 15 wymiarów psychologicznych, 2 pytania na wymiar. Wymiary idą od S1 do So3, w kolejności Ja (S1-S3), Emocje (E1-E3), Postawa (A1-A3), Działanie (Ac1-Ac3), Społeczny (So1-So3). Pytania 1-2 odpowiadają S1 (Samoocena), pytania 3-4 S2 (Jasność Ja), i tak dalej.
Każde pytanie ma trzy opcje odpowiadające 1 punktowi, 2 punktom, 3 punktom. Detal łatwy do przeoczenia: nie we wszystkich pytaniach opcje idą w kolejności rosnącej. Niektóre są odwrócone — pierwsza opcja to 3 punkty, ostatnia to 1. Ten odwrócony design uniemożliwia manipulację wynikiem przez mechaniczne wybieranie zawsze pierwszej lub ostatniej opcji.
Po ukończeniu 30 pytań system ma 30 wartości. Sumuje je po wymiarach — 2 pytania każdego wymiaru dają surowy wynik, w zakresie od 2 do 6. Te 15 surowych wyników to fundament całego rezultatu.
Od wyniku do poziomu: trzy progi
Po uzyskaniu surowych wyników, następny krok to zaklasyfikowanie ich. Logika jest prosta do zaskoczenia:
- 2-3 punkty → L (Low, Niski)
- 4 punkty → M (Medium, Średni)
- 5-6 punktów → H (High, Wysoki)
Zwróć uwagę na rozkład: L pokrywa dwie wartości (2 i 3), H pokrywa dwie wartości (5 i 6), ale M odpowiada tylko wartości 4. To znaczy, że dostanie M jest mniej prawdopodobne — twoje dwa pytania muszą zsumować się dokładnie do 4. Design celowo unika „pułapki przeciętności" — nie pozwala, żeby większość ludzi wylądowała w szarej strefie, tylko popycha cię ku ekstremom. To sprawia, że końcowy profil jest ostrzejszy, bardziej „charakterny" i lepiej nadaje się do screenshotowania.
Po zaklasyfikowaniu wszystkich 15 wymiarów dostajesz 15-literową strunę, np. HMH-LML-HHM-LMH-HML. To twoje „DNA osobowości" — input do wszystkich dalszych obliczeń SBTI.
Pattern matching: twoje DNA kontra 25 standardowych szablonów
Z DNA osobowości w ręku, system musi je porównać z 25 standardowymi DNA typów regularnych, żeby znaleźć najbliższe dopasowanie.
Każdy typ ma predefiniowaną 15-znakową strunę wzorca. Na przykład standardowy wzorzec CTRL to HHH-HMH-MHH-HHH-MHM, a DEAD to LLL-LLM-LML-LLL-LHM. Różnica widoczna gołym okiem: CTRL to prawie same H, DEAD to prawie same L.
Metoda porównania używa odległości Manhattan. Najpierw L/M/H mapowane są na liczby: L=1, M=2, H=3. Potem odejmujemy strunę numeryczną typu standardowego od twojej, bierzemy wartości bezwzględne i sumujemy. Odległość bliższa = większe podobieństwo.
Konwersja na podobieństwo: max(0, round((1 - odległość/30) × 100))%. Teoretycznie maksymalna odległość to 30 (15 wymiarów × maksymalna różnica 2 na każdy).
Ranking, fallback i ta butelka
Po obliczeniu odległości do wszystkich 25 regularnych typów, system sortuje od najbliższego do najdalszego. Ale przed ogłoszeniem wyniku są dwie bariery.
Pierwsza to próg podobieństwa. Jeśli twoje najlepsze dopasowanie ma podobieństwo poniżej 60%, system uznaje, że „istniejące szablony cię nie obejmują" i przypisuje ci HHHH (Chichotliwy). To inżynieryjny design „fallback", który gwarantuje wynik dla dowolnego wzorca odpowiedzi.
Druga bariera chronologicznie jest wcześniejsza: kontrola DRUNK. Po 30 oficjalnych pytaniach system prezentuje pytanie uzupełniające o piciu. Jeśli aktywujesz „ścieżkę alkoholową" — pytanie z 4 opcjami, a potem potwierdzenie z 2 opcjami — system pomija cały proces pattern matchingu i daje ci DRUNK. Twoje 30 starannych odpowiedzi? Do kosza.
Pełny przepływ determinacji wyniku: sprawdź DRUNK → jeśli nie aktywowany, rób pattern matching → najlepsze dopasowanie ≥ 60%? → użyj go → poniżej 60%? → HHHH.
Kodowanie wyniku: 16 cyfr do udostępniania
Po ustaleniu wyniku jest jeszcze ostatni krok: zakodowanie go w formacie do udostępniania.
Link udostępniania SBTI zawiera 16-cyfrową strunę. Pierwsze 15 to twoje surowe wyniki na 15 wymiarach (jedna cyfra na wymiar, zakres 2-6), ostatnia to flaga DRUNK (0 lub 1). Na przykład 5342364553423420 oznacza: S1=5, S2=3, S3=4, E1=2, E2=3, E3=6, A1=4, A2=5, A3=5, Ac1=3, Ac2=4, Ac3=2, So1=3, So2=4, So3=2, DRUNK=0.
To kodowanie jest osadzone w parametrze ?result= URL-a do udostępniania. Kiedy ktoś otwiera twój link, system odtwarza pełne wyniki wymiarowe z tego kodu — bez konieczności powtarzania testu. Dlatego doświadczenie udostępniania SBTI jest tak płynne.
To kodowanie implikuje jeszcze jedną rzecz: twój link do udostępniania zawiera wszystkie 15 surowych wyników twoich wymiarów. Kto umie trochę w technologię, może je odczytać prosto z URL-a — te 16 cyfr to kompletna psychologiczna migawka, tylko skompresowana w niewinnie wyglądającą strunę liczbową.
Po co znać algorytm
Ktoś mógłby zapytać: po co znać te szczegóły algorytmiczne? Chcę tylko zrobić test i wrzucić wynik.
Wartość znajomości algorytmu nie polega na „graniu lepiej", ale na poprawnym zrozumieniu znaczenia i ograniczeń wyniku.
Wiedząc, że każdy wymiar ma tylko 2 pytania, rozumiesz, dlaczego wynik zmienia się przy ponownym teście — zmiana jednej opcji na jednym pytaniu może przesunąć wymiar z H do M czy nawet L, odwracając cały matching. Wiedząc, jak działa odległość Manhattan, rozumiesz realną różnicę między „63% podobieństwa" a „95% podobieństwa".
Algorytm SBTI nie jest skomplikowany, ale jest elegancki. Z minimum danych wejściowych (30 wyborów) buduje 15-wymiarowy profil psychologiczny i najprostszym możliwym obliczeniem odległości dopasowuje go do etykietki, która ma charakter, ma wizualny impact i sprawia, że chcesz zrobić screena. Cały system od wejścia do wyjścia jest zaprojektowany pod jeden cel: dać ci coś warte udostępnienia.