глоссарий

Contract net

Contract net

Контрактная сеть (Contract net) — классический механизм распределения задач в мультиагентных системах. Агент-заказчик объявляет тендер, агенты-подрядчики присылают предложения, заказчик выбирает лучшего и заключает с ним «контракт». Название подчёркивает сходство с реальными аукционами: вместо назначения исполнителя создаётся конкуренция за задачу.

Термин важен, потому что лежит в основе децентрализованных систем без единого центра. Классический планировщик может стать узким местом: ему не хватает данных о возможностях агентов, а сбой рушит весь процесс. Contract net решает проблему через самоорганизацию: агенты сами решают, на какие задачи откликнуться, исходя из загрузки, ресурсов и навыков. Это даёт устойчивость, масштабируемость и адаптивность — механизм применяют в робототехнике, логистике, облачных вычислениях.

Интуитивный пример: компания без начальника. Сотрудник, получивший заказ, вывешивает объявление о вакансии. Желающие пишут цену и срок. Заказчик сравнивает заявки, выбирает подходящего и передаёт работу. После выполнения контракт закрывается. Каждый агент может быть и заказчиком, и исполнителем.

Прикладной пример: в беспилотном складе робот с низким зарядом публикует задачу. Два других предлагают услуги: один свободен, второй подзарядился. Первый выбирает свободного — он справится быстрее. Парк работает без центрального сервера, простой сокращается.

Коротко: Contract net — элегантный способ сделать децентрализованные решения практичными. Вместо иерархии — гибкий рыночный механизм. Логика «объявление — торги — контракт» понятна, как обычный аукцион, и полезна всем, кто интересуется, как агенты учатся договариваться.