• No se han encontrado resultados

3. Marco teórico: Agentes inteligentes

3.3. Negociación entre agentes inteligentes

3.3.2. Protocolo de concesión monótona

El protocolo de concesión monótona [Rosenschein y Zlotkin, 1994] establece un con- junto de reglas que definen el rango de acciones aceptables durante un proceso de negociación. Para esto se sigue un esquema general en el cual cada uno de los agentes involucrados en el proceso realiza inicialmente una propuesta que es beneficiosa para sí mismo, y posteriormente revisa y analiza las diferentes propuestas realizadas para alcanzar un acuerdo.

3.3.2.1. Definición para negociación bi-lateral

La definición inicial del protocolo trata principalmente situaciones de negociación entre dos agentes, utilizando un esquema de rondas o turnos. En cada ronda ambos agentes realizan propuestas, es decir que cada uno propone un potencial acuerdo sobre el objeto de la negociación. Sea X el conjunto de potenciales acuerdos (propuestas posibles), y

3.3 Negociación entre agentes inteligentes

A un conjunto finito de agentes, cada agente i A proveerá una función de utilidad ui : XR+0 que asigna un valor a cada propuesta, siendo 0 el valor más bajo. En la

primer ronda, cada agente irealiza su mejor propuesta. En las rondas siguientes, cada

agente tiene dos opciones:

1. Realizar una concesión y proponer una nueva soluciónx0ique puede ser preferible

para el otro agente j: uj(xi)< uj(x0i)

2. Negarse a conceder y mantener su propuesta actual xi

Un acuerdo es alcanzado cuando un agente realiza una propuesta que su oponente pondera igual o mejor que su actual propuesta, es decir cuando u1(x1) ≤ u1(x2) o

u2(x2)≤u2(x1). Por otro lado, el estado deconflicto ocurre cuando ambos agentes se

rehúsan a realizar una concesión en una ronda. El protocolo de concesión monótona establece el fin de la negociación cuando se alcanza un acuerdo, o bien cuando surge un conflicto. En el caso de acuerdo, la propuesta que satisface a ambos agentes es escogida. En el caso de conflicto, por otro lado, no existirá propuesta que beneficie a todas las partes.

Para decidir qué acción debe tomar un agente en cada ronda de la negociación, se puede adoptar la estrategia propuesta por Zeuthen, que consiste en evaluar la cercanía al riesgo de conflicto, definida como el cociente de la pérdida de utilidad incurrida en caso de adoptar la propuesta de otro agente y la pérdida incurrida por causa de conflicto, de la siguiente manera:

Zi = ui(xi)

ui(xj)

ui(xi)

En este caso, el agente que posea un menor valor de esta métrica, debería conceder. Adicionalmente, una concesión debería bastar para que el otro agente deba conceder en la próxima ronda.

3.3.2.2. Generalización del protocolo para N agentes

En base a las definiciones anteriores para el protocolo de concesión monótona, se puede extender el concepto para definir un protocolo general para negociación multi-lateral [Endriss, 2006].

El esquema general se mantiene en condiciones similares que el esquema planteado para dos agentes:

3.3 Negociación entre agentes inteligentes

1. En la primera ronda, cada agente realiza una propuesta inicial (se asume que será la mejor propuesta de cada uno).

2. En cada ronda siguiente, cada agente realiza una concesión o mantiene su pro- puesta actual.

3. El proceso anterior se realiza iterativamente hasta que surja una situación de conflicto (ningún agente concede), o bien hasta que se alcance un acuerdo. En cuanto al concepto de acuerdo, se establece lo siguiente: un acuerdo es alcanzado si y sólo si un agente realiza una propuesta que es al menos tan buena para cada uno del resto de los agentes como sus propias propuestas, es decir, que existe un agente

i A tal que uj(xi)≥uj(xj) para todos los agentes j A.

En el caso de la concesión, no existe un criterio único. Se puede por ejemplo realizar una propuesta que beneficie a alguno de los otros agentes, o bien buscar una propuesta que beneficie a todos. A continuación se describen algunos criterios de concesión:

Concesión “fuerte” (Strong concession): realizar una propuesta que es estricta- mente mejor para cada uno del resto de los agentes.

Concesión “débil” (Weak concession): realizar una propuesta que es estrictamen- te mejor para al menos uno de los otros agentes.

Concesión de Pareto (Pareto concession): realizar una propuesta que es al menos tan buena para los otros agentes como su propia propuesta, y estrictamente mejor para al menos uno de ellos.

Concesión “utilitaria” (Utilitarian concession): realizar una propuesta tal que la suma de las utilidades de los otros agentes incremente.

Concesión “igualitaria” (Egalitarian concession): realizar una propuesta tal que la utilidad mínima entre los otros agentes aumente.

Concesión de Nash (Nash concession): realizar una propuesta tal que el producto de las utilidades de los otros agentes incremente (producto de Nash).

Concesión “egocéntrica” (Egocentric concession): realizar una propuesta que es peor para sí mismo. Este criterio se basa en que lo que es peor para un agente, es mejor para el resto.

Cada una de estas alternativas es aplicable de acuerdo a la naturaleza del problema y a la disponibilidad de información sobre el entorno involucrado en el proceso de negociación.

3.3 Negociación entre agentes inteligentes

Propiedad Concesión fuerte

Concesión débil

Pareto Nash Concesión Igualitaria Concesión Utilitaria Concesión Egocéntrica Terminación Si No Si Si Si Si Si Composición Si Si Si Si Si Si Si Libre de deadlocks No Si No Si No Si Si Verificabilidad Si Si Si No No No No

Tabla 3.2.: Características generales sobre criterios de concesión

Para evaluar y seleccionar el criterio de concesión más adecuado de acuerdo a los requerimientos de una situación, se pueden considerar las siguientes características de los protocolos de negociación:

Terminación: una propiedad importante de un protocolo de negociación es que este pueda garantizar que todo proceso de negociación que siga el patrón esta- blecido finalizará en algún momento.

Composición: Esta propiedad se satisface si y sólo si la composición de dos concesiones consecutivas de acuerdo a un criterio resultará igual que la aplicación de ambas concesiones por separado.

Libre de deadlocks: Un deadlock se produce cuando ningún agente puede realizar acción alguna de acuerdo con el modelo establecido, pero no se ha llegado a un estado final (acuerdo o conflicto). En el contexto de un protocolo de negociación monótona, cada agente siempre tiene la opción de conceder o mantener una pro- puesta; en consecuencia, siempre será posible continuar la negociación de acuerdo al protocolo. No obstante, existen situaciones para algunos criterios en las cuales un agente que debe realizar una concesión no cumple con las condiciones para hacerlo.

Verificabilidad: Un protocolo debería ser verificable de modo tal que debería ser posible evaluar que todo el mundo está siguiendo las reglas establecidas por el protocolo. Esta evaluación puede ser realizada por cualquiera de los agentes involucrados en la negociación, o bien por una entidad externa.

La tabla 3.2 muestra el cumplimiento (y garantía) de las características mencionadas anteriormente por cada uno de los criterios de concesión:

Para aquellas características que no estén presentes al seleccionar un criterio de con- cesión determinado, se deberán realizar implementaciones adicionales que permitan

3.3 Negociación entre agentes inteligentes

tratar las diferentes situaciones que se puedan generar, y verifiquen el cumplimiento de tales características.

3.3.2.3. Estrategias de negociación

De acuerdo a lo explicado en la sección anterior, en la primer ronda de negocia- ción cada agente realiza una propuesta inicial. En las rondas siguientes, los agen- tes tienen dos alternativas: conceder o mantener su propuesta anterior. Esto im- plica considerar los siguientes aspectos en el proceso de negociación [Endriss, 2006] [Wooldridge et al., 1996]:

¿Cuál debería ser la propuesta inicial de un agente?

Se asume que la propuesta inicial de cada agente deberá ser la propuesta más conveniente/beneficiosa para sí mismo (aquella que maximiza su utilidad). ¿Quién debe conceder en cada ronda?

Para determinar qué agente debe conceder se puede utilizar una generalización de la estrategia de Zeuthen mencionada en lasección 3.3.2.1, aplicada a la situación de negociación multi-agente. En este caso, se evaluará la pérdida de utilidad en caso de concesión asumiendo el peor resultado para el agente en base a las propuestas actuales del resto. Formalmente, esta estrategia se define como:

Zi =      1si ui(xi) = 0 ui(xi)min{ui(xk)|k A} ui(xi) si ui(xi)>0

En efecto, el agente cuyo valor para esta medida sea el menor, será quien deba conceder en la ronda actual.

Si bien esta estrategia resuelve en forma intuitiva la problemática sobre quién debe conceder, podría acarrear el surgimiento de deadlocks como consecuencia de un agente que posee el menor valor Zi pero no puede realizar una concesión. En este caso, la

solución será elegir el agente cuya métrica sea la menor entre el conjunto de agentes que puedan realizar una concesión efectiva en una determinada ronda.

Otra generalización de la estrategia de Zeuthen consiste en evaluar el incremento del producto de utilidades para cada agente de la siguiente manera:

Z´i =Q kA

Documento similar