Considérons le jeu suivant sur un graphique pondéré dirigé avec une puce à un nœud.
Tous les nœuds de sont marqués par A ou B.
Il y a deux joueurs Alice et Bob. Le but d'Alice (Bob) est de déplacer la puce vers un nœud marqué par A (B).
Initialement, Alice et Bob ont respectivement et dollars.
Si un joueur est en position perdante (c'est-à-dire que la position actuelle du jeton est marquée par une lettre opposée), il peut déplacer le jeton vers un nœud voisin. Un tel mouvement coûte quelques dollars (le poids du bord correspondant).
Le joueur perd s'il est en position perdante et n'a pas d'argent pour le réparer.
Considérons maintenant le langage GAME qui se compose de tous les graphiques pondérés dirigés (tous les poids sont des entiers positifs), la position initiale de la puce et les capitales d'Alice et Bob qui sont données dans la représentation unaire
telle qu'Alice a une stratégie gagnante à ce jeu.
Le langage GAME appartient à P . En effet, la position actuelle du jeu est définie par la position de la puce et les capitales actuelles d'Alice et Bob, donc la programmation dynamique fonctionne (ici il est important que les capitales initiales soient données dans la représentation unaire).
Considérons maintenant la généralisation suivante de ce jeu. Considérons plusieurs graphiques pondérés dirigés avec une puce à chaque graphique. Tous les nœuds de tous les graphiques sont marqués par A et B. Maintenant, Bob gagne si tous les jetons sont marqués par B et Alice gagne si au moins un jeton marqué par A.
Considérez le langage MULTI-GAME qui se compose de tous les graphiques , les positions initiales et les majuscules et (dans la représentation unaire) de sorte qu'Alice gagne au jeu correspondant. Ici, il est important que les majuscules soient communes à tous les graphiques, il ne s'agit donc pas uniquement de plusieurs JEUX indépendants.
Question Quelle est la complexité du langage MULTI-JEUX? (Est-ce qu'il appartient aussi à P ou il y a des raisons de penser que ce problème est difficile?)
UPD1 Neal Young a suggéré d'utiliser la théorie de Conway. Cependant je ne sais pas s'il est possible d'utiliser cette théorie pour plusieurs jeux à capital commun.
UPD2 Je veux montrer un exemple qui montre que MULTI-GAME n'est pas très simple. Permettez à Alice de diviser son capital en quelques termes (Elle va utiliser dollars pour le ème graphique). Définissez comme le nombre minimal tel que dans le ème jeu, Bob gagne si Alice et Bob ont respectivement et dollars. Si (pour certains fractionnements ) alors Alice gagne. Cependant, l'inverse n'est pas vrai. Considérez deux copies du graphique suivant (initialement la puce est à gauche en haut A):
Pour un graphique, Bob gagne si et ou si et . Cependant, pour le jeu avec deux copies de ce graphique, Bob perd si et . En effet, Bob à dépenser ou dollars pour déplacer les deux puces à un noeud marqué par . Ensuite, Alice peut déplacer au moins une puce vers un nœud marqué par A. Après cela, Bob n'a plus d'argent pour sauvegarder sa position.
UPD3 Étant donné que la question des graphiques arbitraires semble difficile, considérez des graphiques spécifiques. Notons les nœuds d'un graphe comme . Ma restriction est la suivante: pour chaque paire il existe un bord de à et il n'y a pas de bord inverse. Il existe également une restriction pour les coûts des arêtes: pour l'arête à n'est pas supérieure à celle de à .
la source
Réponses:
Étant donné que la réponse de Steven Stadnicki ne semble pas avoir été acceptée par le demandeur, j'ai pensé qu'il pourrait être utile de fournir une mise à jour: j'ai une réduction de 3SAT à MULTI-GAME. Je n'ai pas regardé attentivement la réponse de Steven ou suivi le lien qu'il a fourni, mais sur la base de la réduction suivante, je ne serai pas surpris si MULTI-GAME est effectivement PSPACE-complete. Cependant, je ne prendrais pas la peine d'étendre ce résultat au-delà de la dureté NP.
Une instance 3SAT est constituée des clauses , chaque clause étant de la forme où chaque est l'une des variables ou la négation d'une des variables.C1,…,Cm Ci=Li1∨Li2∨Li3 Lik x1,…,xn
Dans une telle instance 3SAT, la réduction crée une instance MULTI-GAME composée de jeux - un pour chaque variable et un autre jeu utilisé comme puits de capital excédentaire. Nous allons d'abord définir la structure des graphiques pour chaque jeu, puis regarder un exemple et discuter de l'idée de base, puis nous déterminerons les coûts exacts à attribuer aux bords pour que la réduction reste ferme.n+1
Tout d'abord, le graphique de jeu variable pour chaque variable :Gj xj
Pour chaque littéral de la clause , si ou , créez des sommets étiquetés et marqués avec A et des sommets étiquetés et marqués avec B. Ajoutez des bords et avec des coûts définis sur . (Nous définirons plus tard.)Lik Ci Lik=xj Lik=¬xj CiTA CiFA CiTB CiFB (T,CiTA) (F,CiFA) lik lik
Ajoutez des arêtes et . Si , définissez le sur et le sur . Sinon, définissez le sur et le sur .(CiTA,CiTB) (CiTA,CiTB) Lik=xj (CiTA,CiTB) lik−1 (CiTA,CiTB) lik (CiTA,CiTB) lik (CiTA,CiTB) lik−1
Le jeu du puits de capitaux:
C'est beaucoup à prendre, donc j'espère qu'un exemple rendra cela un peu plus digeste. Notre instance 3SAT est la suivante:
La réduction transforme cette instance en 4 graphiques de jeu variables et 1 graphique de puits de capital. Dans les schémas ci-dessous, les sommets rouges sont marqués avec A (c'est-à-dire sont des positions gagnantes pour Alice) et les sommets cyan sont marqués avec B (sont des positions gagnantes pour Bob).
Graphique pour :x1
Graphique pour :x2
Graphique pour :x3
Graphique pour :x4
Graphique pour le puits de capital:
L'idée est la suivante:
Bob est obligé de faire les premiers coups pour sortir des positions perdantes dans les parties variables. Chacun de ces mouvements code une affectation de vrai ou faux à la variable correspondante.n n
Alice aura alors suffisamment de capital pour effectuer exactement 4 mouvements, chacun desquels Bob devra avoir suffisamment de capital pour correspondre afin que Bob gagne. Les valeurs et doivent être choisies de telle sorte que la seule stratégie gagnante possible d'Alice soit la suivante, pour une clause :ci lik Ci
( désigne ou , dont un seul est accessible dans un jeu variable donné après les mouvements d'ouverture de Bob.)Ci?A CiTA CiFA
Si l'ouverture de Bob correspond à une affectation de vérité qui laisse une clause insatisfaite, alors Alice choisir et mettre en œuvre la stratégie ci-dessus coûte Alice capital à mettre en œuvre, et Bob la même chose battre; si d'autre part est satisfait, alors le contre-jeu de Bob obtient une remise d'au moins . Notre objectif en définissant les valeurs et et les capitaux de départ d'Alice et Bob est de s'assurer que cette remise est le facteur décisif pour savoir si Alice ou Bob gagne.Ci Ci li1+li2+li3+ci Ci 1 ci lik
À cette fin, définissez et définissezb=m+1
Le capital de départ d'Alice à ,9b10+b8
et le capital de départ de Bob à9b10+b8+n−1.
Notez que toutes ces valeurs sont polynomiales en , donc l'instance MULTI-GAME générée par la réduction a une taille polynomiale dans la taille de l'instance 3SAT même si ces coûts sont codés en unaire.m
Notez également que pour chaque clause , est le capital de départ d'Alice. (Ce qui est également plus que le capital de Bob après avoir effectué les premiers mouvements.)Ci li1+li2+li3+ci=9b10+b8 1 n
Tout d'abord, il est immédiatement clair que si l'ouverture de Bob définit une affectation de vérité qui laisse une clause insatisfaite, alors Alice gagne en utilisant sa stratégie de clause donnée ci-dessus.Ci Ci
Si l'ouverture de Bob satisfait toutes les clauses, nous pouvons discuter des contraintes sur les options d'Alice qui excluent toute autre possibilité de gagner Alice. Notez que l'ordre dans lequel Alice effectue ses mouvements n'est pas pertinent, car les réponses de Bob sont forcées et le capital total dont Bob aura besoin pour répondre aux mouvements d'Alice est inchangé par l'ordre des mouvements d'Alice.
À partir de cette étape, nous pouvons ignorer les termes et dans les coûts de déménagement choisis, car ils totaliseront toujours . Étant donné qu'Alice doit choisir exactement un mouvement dans le jeu de capitaux, supposons que ce mouvement est vers . Ensuite, Alice a (en ignorant les termes et ) capital restant, et Bob a moins que ce montant restant.b10 b8 9b10+b8 CiA b10 b8 ∑3k=1ib2k 1
Des arguments similaires devraient établir qu'Alice doit sélectionner les mouvements coûtant et . Si l'affectation de vérité de Bob satisfait , alors même cette stratégie ne fonctionne pas, car la remise que Bob obtient sur l'un des coûts basés sur compense le capital de moins qu'il a après son ouverture.li2 li1 Ci lik 1
Une remarque sur ma réponse précédente: il est évident avec le recul que, pour la variante TABLE-GAME de MULTI-GAME que j'ai définie dans les commentaires de cette réponse, un DP de style sac à dos suffit pour déterminer quel joueur a une stratégie gagnante. Vous pouvez affirmer que la meilleure stratégie de Bob est de toujours répondre à un état perdant dans une table de jeu donnée avec un investissement minimal possible (cela ne peut pas couper un coup ultérieur pour Bob qu'il aurait autrement), et à partir de là que l'ordre des mouvements d'Alice n'a pas d'importance. Il s'agit alors de choisir une répartition du capital d'Alice parmi les jeux de sorte que la somme des réponses gagnantes minimales de Bob sur ces jeux dépasse son budget, qui peut être recadré comme un problème de style sac à dos, qui a un DP polynomial en raison à la représentation unaire des coûts. (Ma récurrence serait en fait '
Il s'avère que même une arborescence simple pour chaque jeu, avec une profondeur constante et vraiment une seule fourchette significative par jeu (à savoir ceux au début qui obligent Bob à choisir une affectation de vérité) est suffisante pour obtenir la dureté NP. J'ai eu quelques idées pour me débarrasser de cette fourchette initiale, qui a bloqué en quelque sorte forçant Bob à investir un montant fixe relativement important de capital dans jeux sans qu'Alice n'ait à s'engager à l'avance dans ces jeux, mais évidemment puisque TABLE-GAME est dans P ce n'est pas possible sans la fourche.n
Je n'ai pas beaucoup pensé à votre cas spécial d' UPD3 . Je soupçonne que c'est aussi NP-difficile, pour la raison que mes gadgets variables semblent en un coup d'œil comme s'ils peuvent être adaptables à ces contraintes, mais je ne vais probablement pas y aller plus loin.
la source
Mise à jour: probablement incorrecte, laissant pour le moment le souvenir d'avoir exploré une avenue. Voir les commentaires.
Mise à jour 2: définitivement incorrecte.
Considérons un graphique de forme (B) -1-> (A) -1-> (B), c'est-à-dire , où , , les sommets 1, 2, 3 sont respectivement étiquetés B, A, B et les arêtes sont toutes affectées à 1.G=(V,E) V={1,2,3} E={(1,2),(2,3)}
Définissez une instance de MULTI-JEU en 3 parties en définissant , , les trois parties commençant sur le sommet 1. Clairement, Alice ne peut pas gagner cette partie.mA=mB=2 G1=G2=G3=G
Cependant, la récurrence ci-dessous échoue pour : il n'y a pas de répartition des fonds de Bob entre les deux premiers jeux et le troisième jeu de sorte que pour toutes les répartitions des fonds d'Alice , à la fois et . Si ou , alors ; et si alors .M[3,2,2] 2−u,u v,2−v M[2,2−u,2−v]=B W[3,u,v]=B u=1 u=2 M[2,2−u,2]=A u=0 W[3,u,2]=A
Je ne vois pas de moyen immédiat de sauver cette approche. Inverser l'ordre de quantification sur et fait échouer la récurrence sur l'instance dans la mise à jour 2 du message de question.u v
Étant donné une instance MULTI-GAMEmA,mB,G1,…,Gn,
Précalculer
pour tous les jeux et tous les , .x≤mA y≤mB
Désignons par le gagnant de MULTI-GAME si l'instance est limitée aux premiers graphes et fonds , . ( si Bob gagne, sinon.) AlorsM[k,x,y] k x≤mA y≤mB M[k,x,y]=B A
et
Sortie "oui" si , "non" sinon.M[n,mA,mB]=A
la source
D'après mes commentaires ci-dessus, voici une réduction qui, je pense, montre que le problème est difficile pour PSPACE (et probablement complet). Soit le graphe à nœuds, numéroté , avec un lien du nœud à pour tout , tous les nœuds autres que marqués pour A, nœud marqué pour B, et le chit initialement satisfait sur . (Tous les bords ici ont coûté 1). Il doit être clair que B gagne ssi il a dollars. (Si besoin est, nous pouvons donner des bords de coût unitaire à partir de chaque nœud autre que[n] n+1 n…0 i+1 i 0≤i<n 0 0 n [n] ≥n 0 à lui-même, puisque A voudra toujours garder le chit aussi loin que possible de et B voudra toujours le rapprocher; en effet, si les auto-liens ne sont pas autorisés, nous pouvons «doubler» la ligne en deux exemplaires, formant une échelle avec des liens bidirectionnels.0
Maintenant, considérons le graphe avec deux nœuds supplémentaires et : le nœud relie à certains et à , et le nœud a des liens à et (Supposons que ). Tous ces liens ont un coût nul. (Ce n'est pas strictement nécessaire pour la réduction, mais c'est pratique.) Les deux et sont marqués pour A. De toute évidence à partir de B voudra aller à tandis que A voudra aller àG α β α [i] β β [j] [k] j<k α β β [j] [k] (A préférerait ne pas bouger du tout, mais cela peut valoir la peine de passer à pour augmenter le coût pour B). De même, il peut être arrangé que B ne veuille jamais passer à et que A veuille toujours le faire. La valeur théorique de ces positions est alors . Mais il est connu que l'établissement de la valeur d'une somme de jeux (c'est-à-dire des graphiques) de ce type est PSPACE-complete; cela a été montré dans la thèse de maîtrise de Laura Jo Yedwah . Votre problème est donc au moins difficile pour PSPACE.[k] [i] {i∣{j∣k}}
la source