Niedawno zacząłem epickie przygody.
Niestety dużo wojska tam idzie.
Zastanawiałem się ile razy będę musiał posłać gienków (każdy rodzaj gienka ma inna pojemność i inny czas marszu).
Rozwiązywałem już takie zadania i wtedy użyłem narzędzia/dodatku dostępnego w Excelu - Solvera (jeszcze w starym Excelu 2000)
Kopiowanie załączonych plików jest dozwolone, natomiast rozpowszechnianie/modyfikacja i publikacja, tylko gdy zostanie podany jego autor kty45.
Definicja problemu
Spoiler
1. Zdefiniowałem listę generałów [nazwa]|[pojemność]|[czas podróży]|[czas podróży z rozstawieniem] w arkuszu "Generałowie"
2. Zdefiniowałem tabele w arkuszu "Czas Wysyłki Wojska" w której określiłem
- ile razy wysłać generała [komórki A2:A11]
- ile posiadamy generałów [komórki B2:B11]
- rodzaj generała (tu jest wcześniej zdefiniowana lista ) - to można samemu zmienić z pola "Combo" wybrać rodzaj generała lub ustawić "Nic"
- ile wojska (R,O,Ż,EŻ,Ł,WŁ,K,Ku,Pu) chcemy wysłać - to można samemu zmienić - składy wpisujemy w [komórki F16:F24].
Napisałem kilka formuł - wrzuciłem zadanie do Solvera:
a) narzuciłem ograniczenia:
- ilość razy w zakresie od 0 do [max_wysyłki] - parametr obliczany automatycznie
- ilość obliczonego wojska >= wysłanego wojska
- ilość razy ma być liczba całkowitą
b) zmienień komórki to [ile razy wysłać generała]
c) funkcja celu to min z max czasu wysyłki
i po kilku minutach miałem rozwiązanie. :)
W arkuszu "Czas Wysyłki Wojska"
zmieniamy komórki B2:B11 oraz C2:C11 oraz skład wojska F16:F24 i naciskamy przycisk "Oblicz czas wysyłki wojska"
Dlaczego przyjąłem czas dłuższy niż 15/30 min
Spoiler
tu macie odpowiedz na forum 2-pytania-o-przygody
1. Ile czasu armia "płynie" na wyspę na której jest przygoda?
Z opisu wynika że 30 minut.
Cytat:
Zamieszczone przez Egzekutor_Guns
Jednak w rzeczywistości trwa to o wiele dłużej.
- wydanie rozkazu wymarszu ( kilka sekund )
- zwijanie garnizonu ( około 30 sekund )
- marsz generała do najbliższego magazynu ( kilka sekund - kilka minut )
- podróż generała ( 30 minut lub 15 minut )
- relokacja generała do lądowiska ( kilkanaście sekund )
- rozstawienie garnizonu ( około 30 sekund )
Ja przyjąłem zasadę że do każdego marszu gienka trzeba doliczyć dodatkowe 2 min
Dodatkowe opcje i uwwagi
Spoiler
Przy dużej ilości kombinacji/pod-problemów jakie musi rozwiązać Solver przydaje się zmienić
- dokładność na większą [dłużej wyszukuje pod-problemy] [komórka J2]
- ilość iteracji [komórka J3]
Czasem też nie znajduje optymalnego rozwiązania.
W każdej chwili możecie przerwać działanie uruchomionego solvera - naciskając [Esc].
Przykład
Spoiler
---------------------------------------------------------
Dzielny Mały Krawiec (major)- Poznańczyk potrzeba wysłać
---------------------------------------------------------
1466R 408O 342Ż 152EŻ 1362Ł 260WŁ 184Ko 210Ku 185Pu razem 4569
Mając 1 Majora 1 Weterana 3 Doświadczonych 5 Zwykłych minimalny czas to 96 min [1:36:00]
Dodając do powyższego 1 Kwatermistrza zaoszczędzimy 45min (minimalny czas 51 min [0:51:00])
----------------------------------------------------------------------------------------------
Synowie Małego Krawca (major)- Poznańczyk potrzeba wysłać
---------------------------------------------------------
1238R 328O 130Ż 335EŻ 1109Ł 50WŁ 138Ku 248K 188Pu razem 3764
Mając 1 Majora 1 Weterana 3 Doświadczonych 5 Zwykłych minimalny czas to 85 min [1:15:00]
Dodając do powyższego 1 Kwatermistrza zaoszczędzimy 34min (minimalny czas 51 min [0:51:00])
----------------------------------------------------------------------------------------------
Bohaterski Mały Krawiec (major)- Poznańczyk potrzeba wysłać
---------------------------------------------------------
2556R 306O 51Ż 241EŻ 2030Ł 253WŁ 246Ku 520K 192Pu razem 6395
Mając 1 Majora 1 Weterana 3 Doświadczonych 5 Zwykłych minimalny czas to 119 min [1:59:00]
Dodając do powyższego 1 Kwatermistrza zaoszczędzimy 34min (minimalny czas 85 min [1:25:00])
----------------------------------------------------------------------------------------------
Spakowany arkusz znajdziecie tutaj CzasWysyłkiWojska_v4.zip
Arkusz napisany i przetestowany pod Excelem 2013 PL, ale powinien poprawnie działać pod 2010.
Niestety, nie wiem czy będzie działać pod niższymi wersjami lub innymi wersjami językowymi.
Jak dodać dodatek Solvera do Excela ? - poszukajcie w Google.
Arkusz wymaga uruchomienia makr - zanim je uruchomicie mozecie je przejrzeć.
Życzę udanych symulacji.
26.03.2015 14:01
Bloodmorgh
Ciekawa sprawa...
08.05.2015 16:25
Rif1e
Widzę jakiś pasjonat modeli matematycznych. Rozumiem, że ci to sprawia frajdę i nie chcę, żebyś potraktował to co napisze jako krytykę tylko sugestię.
Nie warto tworzyć skomplikowanych formuł dla każdej głupoty jeżeli to ma komuś służyć. Jak już wiadomo co się chce wysłać to wiadomo, że po kolei wysyła się wszystko wszystkimi gienkami, które nie sa potrzebne w walce i żadne obliczenia do tego potrzebne nie są żeby przesłać je szybko.
Proponuję CI zająć się czymś co się naprawdę przyda. Np. kalkulatorami opłacalności produkcji/ dochodowości przygód itp.