Poszukiwanie igły w stogu siana

Zaczęty przez TJM, 17 Październik 2017, 18:48

TJM

Od jakiegoś czasu poszukuję sposobów na automatyzację / wspomaganie procesu poszukiwania rozwiązań wśród wyników zwracanych z klientów.

Hillclimb score nie jest absolutnym wyznacznikiem - może się zdarzyć, że tekst mało optymalnie pokrywa się z trigramami w słowniku i w takim przypadku (o ile w ogóle zostanie znaleziony) może mieć score mniejszy niż losowo wygenerowane przez algorytm bzdety. Przykładem może być ostatnio złamany tekst

Kolejny przypadek, to tekst gdzie jest trochę błędów, czy to ze względu na słaby odbiór, czy też błąd podczas przepisywania z formularza do wersji elektronicznej, czy też z różnych innych powodów jakie mogły wystąpić (należy pamiętać, że to były warunki wojenne). Taki tekst (znów, o ile zostanie w ogóle odnaleziony) również może mieć nieoptymalne score ze względu na całkowicie nieczytelne sekcje. Do tego dochodzą jeszcze możliwości, że algorytm źle odgadnie połączenia w obrębie steckera lub położenia ringów i pojawi się jeszcze więcej poprzekręcanych liter.

Ekstremalnym przykładem takiego tekstu mogłaby być sytuacja, że przekręcone będą akurat wszystkie litery wymagane do wizualnej identyfikacji słów, a jednocześnie zostanie ich tyle, że z trigramów dobre score się uzbiera i trafi do listy wyników.

W celu automatycznego przeszukiwania wyników ubiedziłem 3 algorytmy: pierwszy szuka słów ze słownika (kiepskiego - ogólny słownik niemiecki, okraszony trochę tekstami z depesz). Drugi szuka w tekście powtórzeń, tolerując przy tym znaczne ilości poprzekręcanych liter. Generuje sporą ilość fałszywych alarmów, ale też jest bardzo skuteczny - służy do wychwytywania powtórzeń różnych skrótów, nazw miejscowości, sygnatur itp - takie w tekście często były zapisywane po 2 razy. Trzeci algorytm znów wykorzystuje słownik, tym razem dość krótki - zawierający różne zwroty znane z depesz z tego okresu. Przeszukuje tekst pod kątem ich wystąpień, tolerując dość dużo przekręconych liter (domyślnie 75% musi się zgadzać).

Z rezultatem można zapoznać się tutaj http://www.enigmaathome.net/forum_thread.php?id=1127 - są tam linki które okresowo będę aktualizował, do czynnych co większych batchów. Może akurat komuś będzie się nudziło na tyle, żeby poczytać podpowiedzi generowane przez serwer  %) Pod id w linku w razie czego pasują też id z server_status.

Jeśli macie jakąś propozycję jak jeszcze w wynikach można szukać rozwiązań, to chętnie posłucham - może da się zaimplementować.
Zakładam najczarniejszy scenariusz, na depeszach które zostały nie złamane, wszyscy już polegli więc prawdopodobnie nie będą w 100% czytelne, chociaż jedna jak do tej pory była w bardzo ładnym stanie (KLDIO), z drugą już było gorzej.

Gdyby ktoś chciał poszukać jakimś sposobem na własną rękę, mogę udostępnić zrzuty wszystkich unikatowych wyników dla wybranego tekstu, w jakimś w miarę strawnym formacie.

W razie jakiejś pilniejszej sprawy - jestem często dostępny na kanale IRC B@P, na forum czasami zapominam zajrzeć lub nie mam czasu.