Optymalizacja rozwiązania a. k. a. Projektowanie leków trochę inaczej---------------------------------------------------------------------------------------------------------------------------------
Na wstępie powiem, że to takie zadanie - eksperyment. Ma ono na celu... (To uzupełnię dopiero po wypowiedziach minimum 3 osób, bo nie chcę na razie niczego sugerować). Będę bardzo wdzięczny za 2 opinie:
1. Czy tego typu "opowiastkowy" ton w zadaniu jest OK, czy lepiej z niego zrezygnować?
2. Co sądzicie o tym zadaniu? Czego wg Was uczy?
---------------------------------------------------------------------------------------------------------------------------------
#Bioinformatyk Janek jest w trakcie opracowywania leku na lenistwo.
Lek składa się z 9 składników:
Dwóch substancji aktywnych (a1 i a2),
Trzech substancji pomocnicznych (p1, p2, p3),
Dwóch substancji ułatwiających wchłanianie (w1, w2),
Substancji odpowiadającej za smak leku (s),
Substancji odpowiadającej za kolor tabletki (k).
Substancje te mają właściwości, które można opisać za pomocą liczb. Dane te można zmierzyć eksperymentalnie i wszystkie razem wpływają na skuteczność leku.
Janek na podstawie wstępnych analiz stworzył model opisujący skuteczność leku w zależności od wybranych substancji:

Następnie, przetestował wszystkie możliwe substancje, w każdej grupie składników, pod kątem skuteczności i zapisał wyniki (w formie gotowej do podstawienia do powyższego wzoru) w plikach o następującym formacie:
ID_SUBSTANCJI WYNIK
1 0.94112
2 0.4521
3 0.62236
… …
Pozostało mu tylko wybrać optymalną #kombinację substancji. Jest ich jednak trochę (565 573 496 278 855 282 348 032) za dużo, aby wszystkie sprawdzić w laboratorium. Janek napisał więc skrypt w Pythonie, który oblicza skuteczność leku na podstawie stworzonego wcześniej modelu. Program daje poprawny wynik dla małych zestawów danych, jednak dla bazy stworzonej przez Janka liczyłby się zdecydowanie za długo (dolne oszacowanie to milion lat). Janek (lek miał służyć także jemu) jest tym faktem załamany, bo nie chce mu się pisać programu od nowa, a pracował nad nim ponad dekadę.
Pobierz skrypt Janka oraz bazę danych skuteczności substancji i postaraj się mu pomóc (zoptymalizować rozwiązanie tak, aby uzyskać wynik w bardziej rozsądnym niż milion lat czasie).
Jako odpowiedź podaj ID_SUBSTANCJI optymalnej substancji dla wszystkich grup składników (w przypadku równie dobrych kombinacji wybierz dowolną) w poniższej kolejności:
a1, a2, p1, p2, p3, w1, w2, s, k
---------------------------------------------------------------------------------------------------------------------------------
P.S. Czy jest jakaś szybsza/lepsza droga wstawienia ładnego wzoru na forum niż ta, którą ja przyjąłem?