A scheduler for a machine includes a selector and a traverser. The selector
selects the traverser and selects policies from a library based on a model
of the machine. The traverser looks for a preferred itinerary. The
scheduler includes a first module to choose an itinerary, a second module
to calculate a combined weight, and logic to repeatedly operate the first
and second modules to choose additional itineraries from the group of
itineraries and calculate their combined weight until an end condition is
reached. The end condition includes one or more of when a calculated
combined weight for an itinerary exceeds a predetermined threshold, when a
predetermined time has elapsed, when a combined weight for each of a
predetermined number of itineraries has been calculated, and when a
combined weight for each itinerary in the group of itineraries has been
calculated. The first module chooses an itinerary from either a list of
all of the itineraries or a sub-set of the itineraries. The second module
includes an itinerary validator to compute an itinerary weight for the
chosen itinerary for each of the policies and also includes a combiner to
combine the computed itinerary weight for each of the policies into a
combined weight for the chosen itinerary. The scheduler further includes a
third module to choose an itinerary that has a combined weight calculated
by the second module that is greater than a combined weight of any other
itinerary calculated by the second module.
Un programmateur pour une machine inclut un sélecteur et un chariot. Le sélecteur choisit le chariot et choisit des politiques à partir d'une bibliothèque basée sur un modèle de la machine. Le chariot recherche un itinéraire préféré. Le programmateur inclut un premier module pour choisir un itinéraire, un deuxième module pour calculer un poids combiné, et la logique pour actionner à plusieurs reprises les premiers et deuxièmes modules pour choisir des itinéraires additionnels du groupe d'itinéraires et pour calculer leur poids combiné jusqu'à ce qu'un état de fin soit atteint. L'état de fin inclut un ou plusieurs de quand un poids combiné calculé pour un itinéraire excède un seuil prédéterminé, quand un temps prédéterminé s'est écoulé, quand un poids combiné pour chacun d'un nombre prédéterminé d'itinéraires a été calculé, et quand un poids combiné pour chaque itinéraire dans le groupe d'itinéraires a été calculé. Le premier module choisit un itinéraire d'une liste de tous les itinéraires ou d'un sous-ensemble des itinéraires. Le deuxième module inclut un Validator d'itinéraire pour calculer un poids itinéraire pour l'itinéraire choisi pour chacune des politiques et inclut également un combinateur pour combiner le poids itinéraire calculé pour chacune des politiques dans un poids combiné pour l'itinéraire choisi. Le programmateur autre inclut un troisième module pour choisir un itinéraire qui a un poids combiné calculé par le deuxième module qui est plus grand qu'un poids combiné de n'importe quel autre itinéraire calculé par le deuxième module.