Digit писал(а):Только не очевидно, как исполнители будут оценивать свои возможности?
А я и не обещал панацеи от всех проблем
я могу только доказать, что к этому всё равно придётся прийти при попытке хоть как-то снизить нагрузку на бесконечный полный перебор допустимых решений, как и рынок пришел к универсальным деньгам в попытке уйти от перегруза информацией при естественном обмене, хотя и универсальным деньгам присущи масса проблем которые мы в т.ч. сейчас отгребаем в рамках финкризиса.
Digit писал(а):И как будет происходить выбор исполнителя?
Просто - кто дешевле решает задачу - тому и доверяемся.
Digit писал(а):Про выбор исполнителя
Положим, есть два исполнителя:
1. быстрый и неточный
2. медленный и точный
Пусть первый за 1 мкс на любой запрос говорит, что стоимость его работы 10 руб. А второй долго считает (15 минут), учитывает всякие нюансы и отчитывается о 132,56 руб. за работу.
Во-первых, как супервизор будет контролировать, что исполнитель не нарушает "правила"? Ну, что он, например, работает по графику, все успевает и т.п.? Понятное дело, что если не успел - получил в итоге штраф. Но тогда вместо того, чтоб в это время делать полезную работу, бот впустую попытается что-то сделать, не успеет, оштрафует... но ничего же не сделает!
Есть конкретный срок в который должен быть дан ответ на запрос супервизора, яркий тому пример - проведение тендоров на госпоставки (заметь как удобно мне вести диалог - в любой ситуации есть пример как это уже решается в бизнесе
). Этот срок сразу сообщается исполнителю. Дальше его дело - участвовать в тендоре или нет. Срок конечно же не должен каждым пользователем устанавливаться от балды, а должно быть примерное соглашение на уровне сообщества разработчиков исполнителей и пользователей системы - в какие сроки адекватно успевать дать ответ.
Digit писал(а):Во-вторых, супервизор будет ждать получения оценок от исполнителей? И сколько? Т.е. например мы вводим дополнительные 2 минуты на принятие решения супервизором. Он из этих 2 минут дает 1 мин. на работу исполнителей. Кто не успел - штраф. Или как?
Кто не успел, тот опоздал
Digit писал(а):Про оценку
Как исполнители будут оценивать свои возможности пока не вполне понятно.
1. наличие инструментов (внешние ресурсы, как их назвал Snable). Этот пункт пока вообще не прогнозируем. Пусть накидывается 10 руб. на поиск инструмента и все.
В этом случае диспетчер должен как-то отвечать за наличие этих ресурсов - вы когда вызываете бригаду ставить окна - они не спрашивают есть ли у вас молоток, так же и если вы добавите робота в какую-то мастерскую - возникнет несколько вариантов:
А. Сделать роботу свой набор инструментов;
Б. Установить раздельное использование инструментов с диспетчеризацией и оценкой кто сколько какой инструмент продержал (в библиотеке за невозврат книги вам выпишут штрафники);
Вот я и решил с внешними ресурсами задачку
Digit писал(а):2. (считаем, что "исполнитель" = "программа", которая неважно как реализована, т.е. может крутиться на отдельном проце, может быть просто задачей в многозадачной ОС или еще как-то)
получается, что каждый исполнитель должен знать потребление электронных компонентов. Например, исполнитель-полотер должен знать, сколько потребляет движок привода щетки. Если движок поменяли, изменили метод управления, просто отремонтировали - его потребление изменилось и об этом должен исполнитель знать. как происходит наделение исполнителя знаниями? загружает пользователь? мониторит сам исполнитель?
Список доступных ресурсов с их параметрами и ценами на использование и штрафниками за некорректное с ними обращение передаёт задаче диспетчер.
Digit писал(а):3. Если исполнитель может выполнить работу несколькими способами, то программа должна работать как несколько исполнителей?
Нет, побеждает тот, кто выиграл тендор на задачу.
Digit писал(а):К тому же наиболее эффективно эти режимы варьировать в зависимости от показаний датчиков.
Тендор не могут выиграть 2 игрока одновременно.
Digit писал(а):и еще тут мысль... а если обанкротились все исполнители, а условия поменялись, и последний оставшийся справляться перестал? что тогда? возможна ли ситуация, когда обанкротились все полотеры и полы мыть робот перестал?
В принципе да, надо будет решить этот вопрос еще, но если реально нет программы, которая способна адекватно оценивать свои действия можно к любой программе прилепить тупого адаптивного "насяльника", который не беря на себя финансовых рисков поэтапно с заказчком проведёт несколько первых уборок постоянно спрашивая еще денег на следующий этап, а потом научившись оценивать связь между использованными ресурсами и задачей "откроет фирму" и начнет на себя брать "финансовую ответственность"
методов вычисления адаптивной функции полно.