# Architektura adaptive docking

## Cel pipeline'u
Pipeline służy do wykonywania rzeczywistego screeningu dockingowego w rDock przy ograniczonym budżecie obliczeniowym. Celem nie jest przewidzenie jednego wyniku modelowego bez dockingu, tylko skierowanie prawdziwych uruchomień rDock na bardziej obiecujące ligandy.

## Adaptive docking
Adaptive docking działa iteracyjnie:
1. przygotowuje dataset i target,
2. wybiera ligandy do kalibracji,
3. dockuje je na niższych fidelity,
4. uczy model selekcji,
5. buduje triage survivors,
6. promuje wybrane ligandy na wyższe fidelity,
7. raportuje final hits tylko z final fidelity.

## Multi-fidelity docking
Domyślne fidelity levels:
- 5
- 10
- 15
- 30
- 50

Niższe fidelity są tańsze i służą do wstępnego filtrowania. Finalne hity muszą być potwierdzone na najwyższym poziomie.

## rDock SCORE
- niższy `SCORE` jest lepszy
- `SCORE.INTER` opisuje wkład oddziaływań ligand–receptor
- `SCORE.INTRA` opisuje koszt wewnętrzny ligandu
- `SCORE.RESTR` opisuje kary restrykcyjne

Wysoki udział `SCORE.INTRA` może dawać artefakty. Dlatego pipeline używa component sanity i score filtering.

## Component sanity
Pipeline rozróżnia:
- raw score
- downranked score
- filtered score

`downranked` i `filtered` uwzględniają:
- outliery `SCORE.INTRA`
- `intra_fraction`
- podejrzane komponenty energii

## Reference-free mode
W trybie produkcyjnym pipeline nie wymaga ligandu referencyjnego jako cechy modelowej. Pocket może pochodzić z:
- gotowego `.prm`
- cavity config
- przygotowanego target folderu
- dataset manifest

Ligand referencyjny może istnieć w benchmarku lub redockingu, ale nie jest wymaganiem produkcyjnym.

## Benchmark vs production mode
Benchmark:
- może używać `reference_mode=sampled` do oceny recall,
- może liczyć top-X recall i false negative rate,
- nie powinien wymuszać centralnego full docking całej biblioteki.

Production:
- może działać z `reference_mode=none`,
- nie wolno tam udawać recall bez ground truth,
- rekomendacja strategii opiera się wtedy na jakości hitów, koszcie i stabilności.

## Przepływ danych
1. dataset
2. feature extraction
3. calibration set
4. low-fidelity docking
5. classifier / regressor / cluster models
6. triage
7. promotion
8. final fidelity
9. final hits

## Artefakty wyjściowe
- `metrics/`
- `tables/`
- `plots/`
- `poses/`
- `report.md`

## Interpretacja wyników
Najważniejsze metryki:
- best filtered score
- top5 / top10 mean filtered score
- reduction fraction
- total runs spent
- cost saved vs full
- recall i false negative rate tylko wtedy, gdy jest reference sample

Wniosek produkcyjny powinien zależeć od jakości top-k i kosztu, a nie tylko od pojedynczego najlepszego hitu.