É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,…,CmCi=Li1∨Li2∨Li3Likx1,…,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 :Gjxj
- Créez un sommet étiqueté marqué d'un A (c'est-à-dire un sommet gagnant pour Alice). La puce pour commence au sommet .xjGjxj
- Créez un sommet marqué et un sommet marqué , chacun marqué d'un B (c'est-à-dire que les deux sont des positions gagnantes pour Bob). Créez des arêtes dirigées de vers et , les deux avec des coûts de .TFxjTF1
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.)LikCiLik=xjLik=¬xjCiTACiFACiTBCiFB(T,CiTA)(F,CiFA)liklik
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:
- Créez un sommet marqué , marqué par B.C
- Pour chaque clause , créer un sommet marqué marqué avec A, et un sommet marqué marqué avec B. Création d' un bord avec un coût bord (encore à déterminer ci - dessous), et un bord également avec le coût de l'arête .CiCiACiB(C,CiA)ci(CiA,CiB)ci
C'est beaucoup à prendre, donc j'espère qu'un exemple rendra cela un peu plus digeste. Notre instance 3SAT est la suivante:
C1=x1∨x2∨¬x3
C2=x2∨x3∨¬x4
C3=¬x1∨¬x3∨x4
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.nn
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 :cilikCi
Clause d'Alice : stratégie :Ci soit . Pour chaque , si ou , passez à dans le jeu variable pour . également à dans le jeu de capitaux.Ci=Li1∨Li2∨Li3k∈{1,2,3}Lik=xj¬xjCi?AxjCiA
( désigne ou , dont un seul est accessible dans un jeu variable donné après les mouvements d'ouverture de Bob.)Ci?ACiTACiFA
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.CiCili1+li2+li3+ciCi1cilik
À cette fin, définissez et définissezb=m+1
lik=2b10+ib2k pour chaque ,k∈{1,2,3}
ci=3b10+b8−∑3k=1ib2k ,
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.)Cili1+li2+li3+ci=9b10+b81n
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.CiCi
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.
- Alice ne peut pas faire plus de 4 coups: si Alice fait 5 coups ou plus, alors ses coups ont un coût total de , ce qui dépasse son budget.≥5b10
- Alice doit effectuer 4 mouvements: si Alice sélectionne 3 mouvements dans le jeu de capitaux, son coût total est ce qui est supérieur au budget . Si elle sélectionne un seul coup de 3 dans un jeu variable, son coût total est ce qui est nettement inférieur au capital de Bob après l'ouverture, de sorte que Bob peut facilement se permettre le contre-jeu.≥9b10+3b8−3b7>9b10+2b8≤8b10+2b8+b7
- Alice doit sélectionner un coup dans le jeu de capitaux: si ce n'est pas le cas, elle sélectionne 4 coups dans des jeux variables, avec un coût total , et encore une fois Bob peut facilement se permettre le contre-jeu. (Notez que s'il y avait un jeu de capitaux distincts par clause, nous pourrions même montrer qu'Alice doit jouer dans exactement un de ces jeux.)≤8b10+4b7
À 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.b10b89b10+b8CiAb10b8∑3k=1ib2k1
- Alice doit sélectionner au moins un mouvement coûtant pour une clause :lj3Cj si elle ne le fait pas, alors ses mouvements coûtent (encore des termes d'ordre inférieur) , et Bob a plus que suffisamment de capital pour le contre-jeu.≤3b5
- Ledit mouvement coûtant doit être le mouvement coûtant :lj3li3 il ne peut pas s'agir d'un mouvement coûtant pour , sinon ce mouvement seul coûte qui est supérieur au budget restant d'Alice. Si c'est pour , alors le mouvement de coût doit également être choisi par Alice pour épuiser le terme d'ordre dans le budget restant de Bob. Mais alors soit le terme d'ordre dans le budget restant de Bob, soit le terme d'ordre ne s'épuise pas, alors Bob gagne facilement.lj3j>i≥(i+1)b6lj3j<il(i−j)3b6b2b2
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.li2li1Cilik1
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.