internals mc on multiple cores
play

internals mc on multiple cores Evaluating Players HOMM-III - PowerPoint PPT Presentation

internals mc on multiple cores Evaluating Players HOMM-III Skill-Selection Strategies in Parallel Dimitris Diochnos University of Illinois at Chicago Dept. of Mathematics, Statistics, and Computer Science April 23, 2008 D. I. Diochnos (UIC -


  1. internals mc on multiple cores Evaluating Players’ HOMM-III Skill-Selection Strategies in Parallel Dimitris Diochnos University of Illinois at Chicago Dept. of Mathematics, Statistics, and Computer Science April 23, 2008 D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 1 / 38

  2. Outline Introduction 1 Some skill-selection mechanisms 2 Justifying the title 3 On the implementation 4 5 Experiments and Results Future Work 6 D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 2 / 38

  3. Introduction Outline Introduction 1 A general framework of the problem The real deal Some skill-selection mechanisms 2 Justifying the title 3 On the implementation 4 Experiments and Results 5 Future Work 6 D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 3 / 38

  4. Introduction A general framework of the problem Some objects A group of resources R , such that |R| = N A basket B with M slots; M < N . Each slot is composed by k pockets. Pockets in the same slot contain same resources. Pockets in different slots contain different resources. D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 4 / 38

  5. Introduction A general framework of the problem Assigning resources to pockets At each step we are offered 2 choices of resources. One resource does not appear in any slot so far. The other resource appears in an non-empty slot. We pick one of them and assign it to a pocket (appropriate slot). The process is repeated until all pockets are non-empty . D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 5 / 38

  6. Introduction A general framework of the problem Computational Problem Pr [ R i ∈ B ] ? The probability depends on the way we select resources D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 6 / 38

  7. Introduction A general framework of the problem The adversary Natural questions: How are the resources offered? What is the probability that �R i , R j � is an offer? There is a weight function w : R → N , such that � N i = 1 w ( R i ) = c The current setting forms a partition on resources. Pr [ R i ] = w ( R i ) / � α : R α �∈B w ( R α ) [ R i �∈ B ] Consider S = ∪ s j , such that for each s j : 1 < used pockets < k . Pr [ R j ] = w ( R j ) / � β : R β ∈S w ( R β ) [ R j ∈ S ] D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 7 / 38

  8. Introduction A general framework of the problem The adversary Natural questions: How are the resources offered? What is the probability that �R i , R j � is an offer? There is a weight function w : R → N , such that � N i = 1 w ( R i ) = c The current setting forms a partition on resources. Pr [ R i ] = w ( R i ) / � α : R α �∈B w ( R α ) [ R i �∈ B ] Consider S = ∪ s j , such that for each s j : 1 < used pockets < k . Pr [ R j ] = w ( R j ) / � β : R β ∈S w ( R β ) [ R j ∈ S ] D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 7 / 38

  9. Introduction A general framework of the problem The adversary Natural questions: How are the resources offered? What is the probability that �R i , R j � is an offer? There is a weight function w : R → N , such that � N i = 1 w ( R i ) = c The current setting forms a partition on resources. Pr [ R i ] = w ( R i ) / � α : R α �∈B w ( R α ) [ R i �∈ B ] Consider S = ∪ s j , such that for each s j : 1 < used pockets < k . Pr [ R j ] = w ( R j ) / � β : R β ∈S w ( R β ) [ R j ∈ S ] D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 7 / 38

  10. Introduction A general framework of the problem The adversary Natural questions: How are the resources offered? What is the probability that �R i , R j � is an offer? There is a weight function w : R → N , such that � N i = 1 w ( R i ) = c The current setting forms a partition on resources. Pr [ R i ] = w ( R i ) / � α : R α �∈B w ( R α ) [ R i �∈ B ] Consider S = ∪ s j , such that for each s j : 1 < used pockets < k . Pr [ R j ] = w ( R j ) / � β : R β ∈S w ( R β ) [ R j ∈ S ] D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 7 / 38

  11. Introduction A general framework of the problem More constraints ... Is this all? NO! There is also a model that influences offers �R i , R j � . The resources are partitioned into groups. Each group g is associated with a period p g . Every p g timesteps a resource belonging to g has to appear. Formulas for computing probabilities change. D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 8 / 38

  12. Introduction A general framework of the problem More constraints ... Is this all? NO! There is also a model that influences offers �R i , R j � . The resources are partitioned into groups. Each group g is associated with a period p g . Every p g timesteps a resource belonging to g has to appear. Formulas for computing probabilities change. D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 8 / 38

  13. Introduction A general framework of the problem More constraints ... Is this all? NO! There is also a model that influences offers �R i , R j � . The resources are partitioned into groups. Each group g is associated with a period p g . Every p g timesteps a resource belonging to g has to appear. Formulas for computing probabilities change. D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 8 / 38

  14. Introduction The real deal Motivation HOMM-III : Heroes of Might and Magic III by New World Computing Turn based strategy game Released: June 1999 3 different world-wide tourneys Many country-level tourneys Increased popularity: Russia Germany Poland Bulgaria D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 9 / 38

  15. Introduction The real deal A brief description Users control heroes that acquire different skills ( M = 8 ) The resources reflect different skills ( N = 28) (e.g. Tactics, Wisdom, Earth Magic) Resources in the basket reflect skills acquired by a hero Each skill has k = 3 different levels of expertize (Basic, Advanced, Expert) Groups of skills: WISDOM: Wisdom [ p = 6 ] MAGIC: Air, Earth, Fire, and Water Magic [ p = 4 ] REST: All other 23 skills [ p = ∞ ] Offer / level: � Upgrade an existing skill , Get a new skill � Computational Problem: What is the probability that a specific hero obtains a specific skill given a skill-selection mechanism ? D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 10 / 38

  16. Introduction The real deal A brief description Users control heroes that acquire different skills ( M = 8 ) The resources reflect different skills ( N = 28) (e.g. Tactics, Wisdom, Earth Magic) Resources in the basket reflect skills acquired by a hero Each skill has k = 3 different levels of expertize (Basic, Advanced, Expert) Groups of skills: WISDOM: Wisdom [ p = 6 ] MAGIC: Air, Earth, Fire, and Water Magic [ p = 4 ] REST: All other 23 skills [ p = ∞ ] Offer / level: � Upgrade an existing skill , Get a new skill � Computational Problem: What is the probability that a specific hero obtains a specific skill given a skill-selection mechanism ? D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 10 / 38

  17. Introduction The real deal A sample hero D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 11 / 38

  18. Introduction The real deal A sample hero D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 12 / 38

  19. Some skill-selection mechanisms Outline Introduction 1 Some skill-selection mechanisms 2 Justifying the title 3 On the implementation 4 5 Experiments and Results Future Work 6 D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 13 / 38

  20. Some skill-selection mechanisms Always Right (AR) Recall: Offer / level: � Upgrade an existing skill , Get a new skill � [ AR does not depend on the user’s preference of skills] AR : Small state-space = ⇒ Brute-force computation ( double precision suffices) Note: AR can be used to verify the model since we have no source code! [D - 2006] Statistical-correlation of theory and practice: 0 . 995 . D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 14 / 38

  21. Some skill-selection mechanisms Other skill-selection mechanisms AL : Always pick the left offer. ALTP : ”Always Left Then Preference” Upgrade existing skills as long as not all of them at Expert level. Then the offer will be: � New Skill A , New Skill B � SPOU : ”Seek Preference Otherwise Upgrade” If an interesting (new) skill is offered, pick it; otherwise upgrade an existing skill. Curse of dimensionality! = ⇒ Monte Carlo. D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 15 / 38

  22. Some skill-selection mechanisms Other skill-selection mechanisms AL : Always pick the left offer. ALTP : ”Always Left Then Preference” Upgrade existing skills as long as not all of them at Expert level. Then the offer will be: � New Skill A , New Skill B � SPOU : ”Seek Preference Otherwise Upgrade” If an interesting (new) skill is offered, pick it; otherwise upgrade an existing skill. Curse of dimensionality! = ⇒ Monte Carlo. D. I. Diochnos (UIC - MSCS) internals mc on multiple cores Apr ’08 15 / 38

Recommend


More recommend