Jump to content

АДМБ

АДМБ
Разработано Дэвид Фурнье
Разработчик Основная команда ADMB [1]
Стабильная версия
13.1 [2] / 23 декабря 2022 г .; 17 месяцев назад ( 23.12.2022 )
ТЫ Кросс-платформенный
Лицензия БСД
Веб-сайт www .admb-проект .org
Диалекты
С++

ADMB или AD Model Builder — это бесплатный пакет программного обеспечения с открытым исходным кодом для нелинейного статистического моделирования . [3] [4] Он был создан Дэвидом Фурнье и в настоящее время разрабатывается в рамках проекта ADMB, созданного некоммерческой организацией ADMB Foundation. «AD» в AD Model Builder относится к возможностям автоматического дифференцирования , предоставляемым библиотекой AUTODIF — расширением языка C++, также созданным Дэвидом Фурнье, которое реализует автоматическое дифференцирование в обратном режиме. [5] Сопутствующий программный пакет ADMB-RE обеспечивает дополнительную поддержку моделирования случайных эффектов . [6]

Особенности и использование [ править ]

Методы Монте-Карло для цепей Маркова интегрированы в программное обеспечение ADMB, что делает его полезным для байесовского моделирования. [7] В дополнение к байесовским иерархическим моделям ADMB обеспечивает поддержку моделирования случайных эффектов в частотной структуре с использованием аппроксимации Лапласа и выборки по важности. [6]

ADMB широко используется учеными в академических учреждениях, государственных учреждениях и международных комиссиях. [8] чаще всего для экологического моделирования. В частности, рыбных запасов. оценки с использованием этого программного обеспечения было построено множество моделей [9] ADMB доступен бесплатно по новой лицензии BSD . [10] с версиями, доступными для Windows , Linux , Mac OS X и OpenSolaris операционных систем . [10] Исходный код ADMB стал общедоступным в марте 2009 года. [11] [12]

История и предыстория [ править ]

Реализация [ править ]

Работа Дэвида Фурнье в 1970-х годах по разработке сильно параметризованных интегрированные статистические модели в рыболовстве мотивировалиразработка библиотеки AUTODIF и, в конечном итоге, ADMB.Уравнения правдоподобияв этих моделях обычно нелинейны, и оценки параметрыполученные численными методами.

В начале работы Фурнье стало ясно, что общие числовые значениярешения этих вероятностных проблем могут быть только надежнодостигается с помощью алгоритмов минимизации функций, которыевключать точную информацию о градиентах вероятностиповерхность. Вычисление градиентов (т.е. частных производныхвероятности относительно всех переменных модели) также необходимо выполнить с помощьюс той же точностью, что и само вычисление правдоподобия.

Фурнье разработал протокол написания кода для вычисления требуемогопроизводные, основанные на цепном правиле дифференциального исчисления. Этотпротокол очень похож на набор методов, которые стали известныкак ``автоматическое дифференцирование в обратном режиме . [13]

Статистические модели, использующие эти методы [14] [15] [16] [17] обычно включал восемь составляющих сегментов кода:

  1. целевая функция;
  2. сопряженный код для вычисления частных производных целевой функции по оцениваемым параметрам;
  3. выделенная память для хранения промежуточных данных для производных вычислений, известная как «стек градиентов», и программное обеспечение для управления им;
  4. минимизатор функции;
  5. алгоритм проверки правильности производных по отношению к конечно-разностным аппроксимациям;
  6. алгоритм для вставки параметров модели в вектор, которым можно манипулировать с помощью минимизатора функции и соответствующего производного кода;
  7. алгоритм для возврата значений параметров в вычисление правдоподобия и соответствующий производный код; и
  8. алгоритм вычисления вторых частных производных целевой функции по оцениваемым параметрам, матрица Гессе .

Разработчиков моделей обычно интересует только первый из них.составляющие. Любые инструменты программирования, которые могут сократить накладные расходыразвитие и поддержание остальных семи значительно увеличит ихпроизводительность.

Бьерн Страуструп начал разработку C++ в 1970-х годах в Bell Labs в качестве усовершенствование языка программирования C. C++ широко распространился, иВ 1989 году компиляторы C++ стали доступны для персональных компьютеров.Полиморфизм C++ позволяет представить программированиесистема, в которой все математические операторы и функции могут бытьперегружен для автоматического вычисления производных вкладовкаждая дифференцируемая числовая операция в любой компьютерной программе.

Исследования выдры [ править ]

Фурнье основал Otter Research Ltd. в 1989 году ик 1990 году библиотека AUTODIF включала специальные классы для вычислений производных инеобходимые перегруженные функции для всех операторов C++ ивсе функции стандартной математической библиотеки C++.Библиотека AUTODIF автоматически вычисляет производные целевой функции.с той же точностью, что и сама целевая функция и тем самымосвобождает разработчика от обременительной задачи написанияи поддержка производного кода для статистических моделей.Не менее важно с точки зрения разработки модели,Библиотека AUTODIF включает в себя «стек градиентов», минимизатор функции квазиньютона, средство проверки производных иконтейнерные классы для векторов и матриц. Первое приложение библиотеки AUTODIF было опубликовано в 1992 году. [18]

Однако библиотека AUTODIF не освобождает разработчика полностью отнаписание всех компонентов модели, перечисленных выше. В 1993 году Фурнье далееабстрагировался от написания статистических моделей, создав ADMB — специальную программу.«язык шаблонов» для упрощения спецификации модели путемсоздание инструментов длятрансформировать модели, написанные с использованием шаблонов, в библиотеку AUTODIFприложения. ADMB создает код для управления обменом моделью.параметры между моделью и минимизатором функции,автоматически вычисляет матрицу Гессиана и инвертирует ее, чтобы получитьоценить ковариацию оцениваемых параметров. ADMB таким образомзавершает освобождение разработчика модели от всех утомительныхнакладные расходы на управление нелинейной оптимизацией, тем самым освобождая его или ее отсосредоточьтесь на более интересных аспектах статистической модели.

К середине 1990-х годов ADMB получил признание исследователей, работающих надвсе аспекты управления ресурсами. Популяционные модели, основанные наADMB используются для мониторинга ряда видов, находящихся под угрозой исчезновения.виды и промысловые популяции рыб, в том числекиты, дельфины,морские львы, пингвины, альбатросы, морские ушки, омары, тунцы, марлины,акулы, скаты, анчоусы и минтай. ADMB также былиспользуется для реконструкции движений многих видов животных, отслеживаемых с помощьюэлектронные метки.

В 2002 году Фурнье объединился с Хансом Скаугом, чтобы представить случайнуюэффекты в ADMB. Этотразработка включала автоматический расчет второго и третьегопроизводные и использование автоматического дифференцирования в прямом режиме с последующимв некоторых случаях две развертки обратной модели AD.

Проект ADMB [ править ]

В 2007 году группа пользователей ADMB, в которую входили Джон Сиберт, МаркМаундер и Андерс Нильсен были обеспокоены долгосрочными перспективами ADMB. разработка и обслуживание. Была достигнута договоренность сOtter Research продаст авторские права ADMB с цельюсделать ADMB проектом с открытым исходным кодом и распространять его беззаряжать. Создан некоммерческий фонд ADMB Foundation.координировать разработку и продвигать использование ADMB.Фонд ADMB подготовил предложение Гордону и Бетти Мур.Фонд для приобретения ADMB у Otter Research. Фонд Мура предоставил грант Национальный центр экологического анализа и синтеза в Калифорнийском университете в Санта-Барбаре в конце 2007 года, чтобы регенты Калифорнийского университета моглиприобрести права на ADMB. Покупка была завершена в середине 2008 года, и были размещены полные библиотеки ADMB.на веб-сайте проекта ADMB в декабре 2008 г. К маю 2009 г.произошло более 3000 загрузок библиотек.исходный код был доступен в декабре 2009 года. В середине 2010 годаADMB поддерживался во всех распространенных операционных системах (Windows,Linux, MacOS и Sun/SPARC) для всех распространенных компиляторов C++.(GCC, Visual Studio, Borland), как для 32-, так и для 64-битных версий.архитектуры.

Усилия Фонда ADMB в течение первых двух лет существования ADMB Проект сосредоточился наавтоматизация сборки ADMB для разных платформ,оптимизация установки и созданиеудобная рабочая среда. Планируемое техническоесобытия включать распараллеливание внутренних вычислений,внедрение гибридного MCMC и улучшение большой разреженной матрицыдля использования в моделях случайных эффектов.

См. также [ править ]

Ссылки [ править ]

  1. ^ «Основная команда ADMB» .
  2. ^ «Релизы ADMB» .
  3. ^ "admb-проект" . Проект АДМБ. Архивировано из оригинала 3 марта 2009 года . Проверено 1 апреля 2009 г.
  4. ^ Фурнье, Д.А., Х.Дж. Скауг, Дж. Анчета, Дж. Янелли, А. Магнуссон, М. Н. Маундер, А. Нильсен и Дж. Сиберт. 2012. AD Model Builder: использование автоматического дифференцирования для статистического вывода сильно параметризованных сложных нелинейных моделей. Оптим. Методы 27:233-249
  5. ^ «AUTODIF: расширение языка массивов C++ с автоматическим дифференцированием для использования в нелинейном моделировании и статистике» (PDF) . Проект АДМБ. Архивировано из оригинала (PDF) 11 июля 2011 г. Проверено 3 декабря 2008 г.
  6. ^ Jump up to: Перейти обратно: а б «Случайные эффекты в AD Model Builder: руководство пользователя ADMB-RE» (PDF) . Проект АДМБ. Архивировано из оригинала (PDF) 11 июля 2011 г. Проверено 3 декабря 2008 г.
  7. ^ «Введение в AD Model Builder версии 9.0.0» (PDF) . Проект АДМБ. Архивировано из оригинала (PDF) 4 января 2011 г. Проверено 3 декабря 2008 г.
  8. ^ «База пользователей ADMB и основные приложения» . Проект АДМБ. Архивировано из оригинала 24 июля 2011 г. Проверено 2 декабря 2008 г.
  9. ^ «Библиография: Фондовые оценки» . Проект АДМБ. Архивировано из оригинала 26 февраля 2013 г. Проверено 3 декабря 2008 г.
  10. ^ Jump up to: Перейти обратно: а б «Загрузки ADMB» . Проект АДМБ . Проверено 28 июля 2010 г.
  11. ^ «Пресс-релиз UCSB: «Программное обеспечение для оценки рыбных запасов теперь общедоступно » . Калифорнийский университет, Санта-Барбара . Проверено 9 декабря 2008 г.
  12. ^ «Доступен исходный код ADMB» . Проект АДМБ. Архивировано из оригинала 18 апреля 2010 г. Проверено 14 мая 2009 г.
  13. ^ А. Гриванк и Г. Ф. Корлисс (ред.). Автоматическая дифференциация алгоритмов: теория, реализация и применение. ` Общество промышленной и прикладной математики. 1992.
  14. ^ Д. Фурнье и И. Дунан. Метод оценки запаса на основе длины, использующий обобщенную модель разницы задержек .Канадский журнал рыболовства и водных наук, 44(2):422–437, 1987.
  15. ^ Д. Фурнье и А. Уорбертон. Оценка моделей управления рыболовством путем моделирования адаптивного управления – введение составной модели .Канадский журнал рыболовства и водных наук. 46(6):1002-1012, 1989.
  16. ^ Д. Фурнье, Дж. Сиберт, Дж. Майковски и Дж. Хэмптон. MULTIFAN — метод, основанный на правдоподобии, для оценки параметров роста и возрастного состава на основе наборов данных о различных частотах длины, проиллюстрированный с использованием данных по южному голубому тунцу (Thunnus maccoyii) .Канадский журнал рыболовства и водных наук, 47(2):301–317, 1990.
  17. ^ Дж. Сиберт, Дж. Хэмптон, Д. Фурнье и П. Биллс. Модель адвекционно-диффузионной реакции для оценки параметров движения рыбы по данным мечения с применением к тунцу (Katsuwonus pelamis) .Канадский журнал рыболовства и водных наук, 56(6):925-938, 1999.
  18. ^ К. Н. Холланд, Р. Брилл, Р. Чанг, Дж. Сиберт и Д. Фурнье. Физиологическая и поведенческая терморегуляция большеглазого тунца (Thunnus obesus) . Природа, 358:410–412, 1992.

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: ebc909415b93bdc79546507d02adf8c7__1690291200
URL1:https://arc.ask3.ru/arc/aa/eb/c7/ebc909415b93bdc79546507d02adf8c7.html
Заголовок, (Title) документа по адресу, URL1:
ADMB - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)