18
SCG layers or SCG stages Karl and Yue 1/14/2011 1

SCG layers or SCG stages Karl and Yue 1/14/20111

Embed Size (px)

Citation preview

Page 1: SCG layers or SCG stages Karl and Yue 1/14/20111

SCG layersor SCG stages

Karl and Yue

1/14/2011 1

Page 2: SCG layers or SCG stages Karl and Yue 1/14/20111

Layers of Constraints

• We can look at the process of game design as a successive layering of constraints on a game. Every new rule you add, every resource you define, is just one more constraint on the players. At the start of the design process you may have nothing, and the players could do anything at all; by the end, the player experience is sharply defined and heavily constrained in a way that is fun. (We will address what “fun” actually is, later in the course.)

• http://gamedesignconcepts.wordpress.com/2009/07/09/level-4-the-early-stages-of-the-design-process/

1/14/2011 2

Page 3: SCG layers or SCG stages Karl and Yue 1/14/20111

Connections

Software design• Executable code• How to structure the code• Architecture• Several software designers

with different responsibilities

Game design• Game to play• How to structure game def• Game architecture• Several game designers

with different goals

1/14/2011 3

Page 4: SCG layers or SCG stages Karl and Yue 1/14/20111

SCG Architecture• Three layer architecture

– Meta game designer-level• fixed by SCG designer: Karl Lieberherr• defines structure of playground:

– domain (instance, solution, …) , claim(setOfInstances, protocol, …)• defines basic game mechanism: propose (oppose|agree)• constrains playground-level

– Playground designer-level• fixed by SCG user• freezes language definitions for Domain (Instance, Solution) Protocol,

etc.• constrains scholar-level

– Scholar-level• game is now defined and scholars define their game strategies

providing methods like propose, refute, strengthen, …

1/14/2011 4

Page 5: SCG layers or SCG stages Karl and Yue 1/14/20111

Levels of Definition: Domain• Meta game designer-level

– Instance– Solution– valid, quality signatures

• Playground designer-level– Instance language definition PL– Solution language definition SL– valid, quality = specific code

• Scholar-level– A specific instance in PL (sentence expressed in PL)– A specific solution in SL– constrains scholar (executing code)

1/14/2011 5

Page 6: SCG layers or SCG stages Karl and Yue 1/14/20111

Levels of Definition: Claim

• Meta game designer-level– setOfInstances– protocol: defines protocol language PRL

• Playground designer-level– setOfInstances, intensional definition predicate =

specific code– defines specific protocol using PRL

• Scholar-level– constrains scholar to define instance (execution)– defines interaction with other scholars

1/14/2011 6

Page 7: SCG layers or SCG stages Karl and Yue 1/14/20111

Four layer SCG architecture

• There are many ways to model a scientific community. For example, – one can argue that a scholar should also define a

confidence level for a claim. Confidence influences reputation gain and loss.

– a scholar should pass a simple entrance exam before participating in a competition

• We need four layers– meta-meta, meta, playground, scholar

1/14/2011 7

Page 8: SCG layers or SCG stages Karl and Yue 1/14/20111

Contributors to Claim Definition

• Claim: setOfInstances, q, r, protocol– meta-meta designer: Karl Lieberherr– specific claim: CNF-pos(2,0.7,2*|P|)

• Claim: setOfInstances, q, r, protocol, confidence– meta-meta designer: Ahmed Abdelmeged– specific claim: CNF-pos(2,0.7,2*|P|, 0.99)

meta-meta: requires confidence, paramterized reputation update formula,meta: sets parameter, playground: adds nothing scholar: specific confidence

meta-meta: requires protocol in some protocol language, meta: protocol language grammar, playground: specific sentence for grammar defines CNF-pos, scholar: uses CNF-pos

1/14/2011 8

Page 9: SCG layers or SCG stages Karl and Yue 1/14/20111

Contributors to Claim Definition

• Claim: setOfInstances, q, r, protocol– meta-meta designer: Karl Lieberherr– specific claim: CNF-pos(2,0.7,2*|P|)

• Claim: setOfInstances, q, r, protocol, confidence– meta-meta designer: Ahmed Abdelmeged– specific claim: CNF-pos(2,0.7,2*|P|, 0.99)

meta-meta: requires confidence info, meta: defines parameterized formula,playground: defines parameter values, scholar: specific confidence

meta-meta: requires protocol in some protocol language, meta: protocol language grammar, playground: specific sentence for grammar defines CNF-pos, scholar: refers to CNF-pos

1/14/2011 9

Page 10: SCG layers or SCG stages Karl and Yue 1/14/20111

Contributors to Claim Definition

• specific claim: CNF-pos(2,0.7,2*|P|)

• meta-meta: overall shape: 4 components– setOfInstances, q, r, protocolName

• meta: defines how to specify a set of instances through a language.

– number k: all clauses are of length k

• playground: defines k to be in a range: [2,17]• scholar: chooses one k

1/14/2011 10

Page 11: SCG layers or SCG stages Karl and Yue 1/14/20111

SCG as Board Game?

• Pieces: Claim, Instance, Solution• Board: – Claim: proposed, refuted, defended, agreed– Instance: provided, solved

1/14/2011 11

Page 12: SCG layers or SCG stages Karl and Yue 1/14/20111

Domain-specific languagesfor games

• ERIC WALKINGSHAW and MARTIN ERWIG (2009). A domain-specific language for experimental game theory. Journal of Functional Programming, 19, pp 645-661 doi:10.1017/S0956796809990220

• http://en.wikipedia.org/wiki/Domain-specific_language

1/14/2011 12

Page 13: SCG layers or SCG stages Karl and Yue 1/14/20111

Evolution through stages

• meta-meta– Domain = <p> Instance <s> Solution <valid>

ValidPredicate <quality> QualityFunction.– Claim = <setOfInstances> Set(Instance) <q>

Quality <r> Resource.

1/14/2011 13

Page 14: SCG layers or SCG stages Karl and Yue 1/14/20111

Evolution through stages

• meta– Domain = <p> Instance <s> Solution <valid>

ValidPredicate <quality> QualityFunction.– Claim = <setOfInstances> Set(Instance) <q>

Quality <r> Resource.– Instance = <size> Integer <name> InstanceId

<structure> …– Solution = <solvesInstance> InstanceId

<structure> …

1/14/2011 14

Page 15: SCG layers or SCG stages Karl and Yue 1/14/20111

Evolution through stages• meta– Domain = <p> Instance <s> Solution <valid> ValidPredicate

<quality> QualityFunction.– Claim = <setOfInstances> Set(Instance) <q> Quality <r>

Resource.– Instance = <size> Integer <name> InstanceId <structure> …– Solution = <solvesInstance> InstanceId <structure> …– ValidPredicate = <p> Instance <s> Solution <body>

ValidBody.– QualityFunction = <r> Quality <p> Instance <s> Solution

<body> QualityBody.– ValidBody = <v> JavaCode.

1/14/2011 15

Page 16: SCG layers or SCG stages Karl and Yue 1/14/20111

Evolution through stages• playground

– Domain = <p> Instance <s> Solution <valid> ValidPredicate <quality> QualityFunction.– Claim = <setOfInstances> Instances <q> Quality <r> Resource.– Instance = <size> Integer <name> InstanceId <structure> InstanceStructure.– Solution = <solvesInstance> InstanceId <structure> SolutionStructure.– ValidPredicate = <p> Instance <s> Solution <body> ValidBody.– QualityFunction = <r> Quality <p> Instance <s> Solution <body> QualityBody.– ValidBody = <v> JavaCode.– InstanceStructure = <constraints> List(Constraint).– Constraint = [<w> Weight ]<r> Relation <vars> List(Variable).– Weight = <v> Integer.– Relation = <v> Integer.– Variable = <name> Ident.– SolutionStructure = <literals> List(Literal).– Literal = Pos | Neg <v> Variable.– Pos = .– Neg = “!”.– Instances = <rs> Set(Relation) . // all CSPs using fixed set of relations– relations must be in 0..255– ValidBody , QualityBody defined in Domain sentence

1/14/2011 16

Page 17: SCG layers or SCG stages Karl and Yue 1/14/20111

Evolution through stages

• scholar– claim

CSP-pos({22},0.375,2*|P|)CSP-neg({22},0.45, 2*|P|)

– instance22(a b c) 22(a b d) 22(a c d) 22(b c d)

– solutiona !b !c !d

1/14/2011 17

Page 18: SCG layers or SCG stages Karl and Yue 1/14/20111

Meaning of resource in negative claim

• Alice claims that she can find a instance p that Bob cannot solve with the given resource.

1/14/2011 18