Ocena:

Książka zapewnia kompleksowy przegląd algorytmów optymalizacji z jasnymi wyjaśnieniami i praktycznymi fragmentami kodu w Julii. Chociaż jest ceniona za przejrzystość i progresję tematów, brakuje jej głębi w niektórych obszarach i pomija niektóre algorytmy, co czyni ją bardziej ankietą niż szczegółowym przewodnikiem.
Zalety:⬤ Kompleksowe omówienie około 100 algorytmów optymalizacyjnych z zachowaniem przejrzystości i zwięzłości.
⬤ Zawiera wszystkie niezbędne informacje podstawowe, w tym podstawowy rachunek różniczkowy i algebrę liniową.
⬤ Zawiera praktyczne fragmenty kodu Julii i zasoby online.
⬤ Przystępna dla czytelników na poziomie licencjackim i zawiera ćwiczenia z rozwiązaniami.
⬤ Pomaga odświeżyć i poszerzyć zrozumienie wielu ważnych koncepcji optymalizacji.
⬤ Brakuje dogłębnej eksploracji i rygoru w wyjaśnieniach niektórych algorytmów.
⬤ Brakuje niektórych ważnych tematów i algorytmów, takich jak Levenberg-Marquardt i MCMC.
⬤ Kod jest napisany wyłącznie w języku Julia, który może nie być przyjazny dla każdego użytkownika.
⬤ Brak końcowego rozdziału podsumowującego; czytelnicy muszą samodzielnie zsyntetyzować informacje.
⬤ Niektórzy użytkownicy uznali implementację Julii za zbyt abstrakcyjną, co utrudniało jej śledzenie.
(na podstawie 21 opinii czytelników)
Algorithms for Optimization
Kompleksowe wprowadzenie do optymalizacji ze szczególnym uwzględnieniem praktycznych algorytmów projektowania systemów inżynierskich.
Książka oferuje kompleksowe wprowadzenie do optymalizacji z naciskiem na praktyczne algorytmy. Książka podchodzi do optymalizacji z perspektywy inżynierskiej, gdzie celem jest zaprojektowanie systemu, który optymalizuje zestaw wskaźników podlegających ograniczeniom. Czytelnicy dowiedzą się o podejściach obliczeniowych do szeregu wyzwań, w tym przeszukiwania wielowymiarowych przestrzeni, radzenia sobie z problemami, w których istnieje wiele konkurujących ze sobą celów i uwzględniania niepewności w metrykach. Rysunki, przykłady i ćwiczenia przekazują intuicję stojącą za podejściami matematycznymi. Tekst zawiera konkretne implementacje w języku programowania Julia.
Omawiane tematy obejmują pochodne i ich uogólnienie na wiele wymiarów; lokalne zejście oraz metody pierwszego i drugiego rzędu, które informują o lokalnym zejściu; metody stochastyczne, które wprowadzają losowość do procesu optymalizacji; optymalizację z ograniczeniami liniowymi, gdy zarówno funkcja celu, jak i ograniczenia są liniowe; modele zastępcze, probabilistyczne modele zastępcze i wykorzystanie probabilistycznych modeli zastępczych do kierowania optymalizacją; optymalizację w warunkach niepewności; propagację niepewności; optymalizację wyrażeń; oraz multidyscyplinarną optymalizację projektu. Dodatki zawierają wprowadzenie do języka Julia, funkcje testowe do oceny wydajności algorytmów oraz koncepcje matematyczne wykorzystywane w wyprowadzaniu i analizie metod optymalizacji omawianych w tekście. Książka może być wykorzystywana przez zaawansowanych studentów studiów licencjackich i magisterskich z matematyki, statystyki, informatyki, dowolnej dziedziny inżynierii (w tym elektrotechniki i inżynierii lotniczej) oraz badań operacyjnych, a także jako odniesienie dla profesjonalistów.