590 likes | 715 Views
Introducción a z- Tree 28 Agosto 2012. Rebeca.Parra@uv.es. Índice. Introducción Etapas Tablas Standard Box Items Buttons Variables Client’s table Control experimentos. z - Tree. Z urich T oolbox for R eady-made E conomic E xperiments Urs Fischbacher
E N D
Introducción a z-Tree 28 Agosto 2012 Rebeca.Parra@uv.es
Índice • Introducción • Etapas • Tablas • Standard Box • Items • Buttons • Variables • Client’stable • Control experimentos
z-Tree • Zurich Toolbox for Ready-made Economic Experiments • Urs Fischbacher • Fischbacher, U. (2007), z-Tree: Zurich toolbox for ready-made economic experiments. Experimental Economics 10(2), pp. 171-178.
Estructura Experimenter Server Program: z-Tree Server PC … Subject Client PC Client Program: z-Leaf Subject Client PC Client Program: z-Leaf
Ficheros ztree.exe Ejecutable servidor zleaf.exe Ejecutable Cliente ztt Código z-tree xls Datos ztq Código cuestionario z-tree @1.ztt, @db.txt … Copias de seguridad y archivos temporales gsf Fichero de recuperación sbj Respuesta al cuestionario Server.eec Dirección IP servidor 5
Etapas (1) • Experimento • Sesión • Tratamiento • Periodo • Etapa (Stage) 6
Etapas (2) Background Etapa 1 Etapa 2 Etapa N Cada vez que pasa por el background los valores de las variables son reseteados 7
Etapas (3) - Ejemplo Background La pantalla de bienvenida únicamente debe mostrarse en el primer periodo Bienvenida Decisión Cálculos Mostrar Resultados 8
Etapas (4) • Cada etapa se compone de: • Programas • Active Screen • WaintingScreen Active Screen La decisión ha sido tomada o el tiempo ha finalizado WaintingScreen 9
Etapas (5) Programa(s): Código a ejecutar al inicio de la etapa. Contiene la programación necesaria: asignación de variables, cálculos y operaciones… Active screen: pantalla que ven los participantes. La decisión ha sido tomada o el tiempo ha finalizado Waiting screen: pantalla que ven los participantes al finalizar la etapa actual. 10
Etapas (6) Background Se ejecuta al inicio de cada periodo Inicializa las variables de los sujetos. No es obligatorio, pero si recomendable Define parámetros generales Se muestra en todas las pantallas Pantalla de espera 11
Etapas (7) Nueva etapa: Treatment > New Stage … (Ctrl+Alt+S) [La opción de menú se activa pinchando sobre la etapa Background o sobre otra etapa] Las etapas no deben tener el mismo nombre, sino dará error en la ejecución 12
Etapas (8) Indicasi los sujetosdebenesperar al restoparaentrar en la etapa o puedenavanzar Wait for all: hasta quetodos los sujetos no hanvalidado la pantalla del stage actual no comienza el siguiente. ¡todova al ritmo del más lento! Start if possible: no hay restricción Start if…: Entransi se satisface la condiciónindicada (Mejorindicarloporcódigoimplementadolo en los programas) 13
Etapas (9) Si la opciónestámarcada- > Solo un sujetoporgrupoentra, además la etapa actual y la siguienteforman un conjunto. Si la opciónestámarcada - > También la etapa anterior permanece al conjunto, y asísucesivamente. 14
Etapas (10) Indicasi se restringe el tiempo de pasoporpantalla en Timeoutsegundos If no input: si no se estableceentrada de datos (input) transcurridoslos segundosindicados en Timeout sale de la pantalla Yes:pasa a la siguienteetapatranscurridos los Timeoutsegundos (independientemente de si el sujeto ha tomado la decisión) No: no sale de la etapa actual pasado el tiempoindicado NOTA: z-Tree cuentadesde Timeout +1 hasta 0 15
Background (1) Número de sujetos Número de grupos Número de periodos de prueba Número de periodos • Define parámetrosgenerales de ejecución 16
Background (2) Number of Subjects: número de sujetos (n) Number of Groups: número de grupos. Porejemplo, paraformarparejassería n/2 #practice periods: número de periodos de prueba. Siempreindicarunomenos del deseado (el 0 cuenta). Si porejemploes1, los periodos de pruebaserán el -1 y el 0. El beneficioobtenido en estosperiodos no se tienen en cuenta en el beneficio final acumulado. #playing periods: número de periodos de la sesión Exch. rate [Fr. / ECU]: Conversión entre moneda experimental (ECU) y la real Lump sum payment [ECU]: Cantidadinterna dada en el periodo 1 y almacenada en la variable TotalProfit Show up fee [Fr.]: cantidadmínimaasistencia a la sesión. 17
Tabla de datos (1) La información de la sesión se almacena en una base de datosconsistente en tablas. z-Tree únicamentepermitealmacenarnúmeros en lasceldas, no texto. Al final de la sesiónlastablas se almacenan en un archivo excel xls Las tablaspordefecto son: Estastienen variables generadaspordefecto. A medidaque se vayangenerandonuevas en los programas se iránincluyendocomocolumnas en la tablaquecorresponda. 18
Tabla de datos (2) Subjectstable Contieneunafilaporcadasujeto. La información se almacenaperiodo a periodo. 1 columnapor variable 1 filaporPARTICIPANTE 19
Tabla de datos (3) Subjectstable • Variables definidaspor z-Tree: • Period: periodo actual • Subject: identificador del participante • Group: identificador de grupo • Profit: beneficio periodo actual • TotalProfit: beneficio acumulado en todas las rondas hasta la actual • Participate: Por defecto toma el valor 1 si lo ponemos a 0 la etapa se ejecutará en 2ndo plano (No se muestra el active screen, pero si ejecuta el código escrito en los programas) 20
Tabla de datos (4) Subjectstable • Solo son modificables las variables Group y Participate. • Se les puede asignar valor, pero z-Tree lo reescribirá. • Ejemplo Participate 21
Tablas de datos (5) Globalstable Tabla común a todos los sujetos. La información se almacenaperiodo a periodo. 1 columnapor variable 1 filapara TODOS Period: periodo actual NumPeriods: número de periodos totales (definido en el background) RepeatTreatment: por defecto toma el valor 0. Es modificable. Si toma el valor 1, el tratamiento se vuelve a ejecutar. RepeatTreatment = If(numRandom <= probabilidadContinuar, 1, 0); 22
Tabla de datos (6) Summarytable 1 fila por periodo. Guarda valores acumulativos de las variables Sessiontable Guarda variables de un tratamiento a otro Otras tablas Dada que la información de la tabla Subjects y Globals solo esaccesibledesde el periodo actual, ¿comoobtenemosvaloresanteriores? Tabla "OLDsubjects"Del mismomodo, para la tablaGlobals Tabla"OLDglobals" 23
Tabla de datos (7) • Treament > New Table… (CRTL+Alt+T) [La opción de menú se activa pinchando sobre la última tabla de etapa Background] 24
Tablas de datos (8) • Lifetime: indica la ‘vidaútil’ en el que la tablapuedeserusada • Period: La tabla se reconstruyedespués de cadaperiodocomosucede en lastablas subjects y globals. La información se almacena en la excel periodo a periodo. • Treatment: La tablaesaccesibledurantetodo el tramiento. Se almacena en la excel cuandotodos los periodoshanfinalizado • session: la tabla se mantienedurantetoda la ejecución del tratamiento (mientras no se cierre el z-Tree la tablapersiste) • Program execution: Puedes especificar si los programas definidos sobre la tabla son ejecutados cuando el primer sujeto entra en la etapa, cuando el último entra o siempre cuando uno entra. • Used Variables: Para tablas con Lifetime session define que variables usar. Tepermiteusarlas sin tenerquedefinirlas 25
Elementos • ¿Qué contiene el Active Screen? • Cajas (Boxes) • Items • Botones • Checker • Programa Permite anidar tantas cajas como desee mediante Container boxes 26
Boxes (1) Los elementosvisuales se muestran en el Active Screen a través de cajas (Box) Si hay únicacajadefinida, estaocupatoda la pantalla. A medidaque se añadenmáscajasestas se ajustansegún la posición y tamañoconfigurado. Si no se establecen los margenes, lascajas se sobreponen. Se posicionansegún se van añadiendo en el árbol de cajas. 27
Boxes (2) • ¿Quépuedencontenerlascajas? • Items • Botones • Otras cajas (Container Box) • Algunas de lasCajas: • Standard Box • Header Box • History Box • Container Box • Grid • Help Box • Calculator Button Box • ContractCreation Box • ContractList Box • ContractGrid Box • Multimedia Box • Chat Box • Plot Box 28
Boxes (3) Treatment > New Box > … (Para activar el menú de las cajas pincha sobre el Active Screen o sobre otra caja) 29
Boxes (4): Standard Box Treatment > New Box > Stardard Box 30
Boxes (5): Standard Box • Name: Nombre • With frame: Si la opciónestámarcadamuestra un marcoalrededor de la caja. • Width: Ancho de la caja. En pixels [p] o porcentaje [%]; opcional. • Height: Alto de la caja. En pixels [p] o porcentaje[%]; opcional. • Distance to the margin: Indica la distanciarespecto al margen superior, izquierdo, derecho e inferior. En pixels [p] o porcentaje [%]; opcional. • Adjustment of the remaining box: Marcalasdistancias en función del resto de cajas; opcional • Display condition: La caja (junto con sucontenido) se muestrasi se satisface la condiciónindicada. ; opcional. • La condición se reevaluacuando el valor de la condiciónvaría.Útilparamostrar/ocultarcajasdinámicamente. 31
Boxes (6): Standard Box Button position: Los botones se puedencolocar en lasesquinas o centrados Button arrangement: En casoque se definamás de un botónestaopciónpermitealinearlos en columna o en fila. ¿Quéelementoscontiene? Items y/o botones 32
Boxes (7): Standard Box Distance to the margin Top Left Caja Width Left Right Caja Height Bottom 33
Boxes (8): Standard Box Ejemplo: Boxes.ztt 34
Items (1) • Tipos de items: • Output: permitemostrartextoy el valor almacenado de las variables • Input: permiterecogervalores de entrada y almacenarlos en una variable de la tabla subjects. • Los elementos se muestransegún se definen de arriba a abajo en la caja. • Treatment > New Item… 35
Items (2) Output Label: Textomostrado. Puedeestarvacío. Variable: variable mostrada. Si estávacío solo se muestra el Label. Layout: Númeroquedeterminacuanto se redondea la variable. Porejemplo, si se pone en el Layout 0.2 y la variable es 12,34, se mostraráporpantalla 12,4. 36
Items (3) Output Label: Textomostrado. Puedeestarvacío. Variable: variable quetoma el valor introducido Layout: Númeroquedeterminacuanto se redondea la variable. Input Minimum/ Maximum Empy allow: No esobligatoriointroducir un valor 37
Items (4) Treatment > New Item… El valor se muestra como múltiplo del valor especificado Input Item Output Item ¡Z-Tree NO permitealmacenartexto! 38
Items(7) Input: almacena en la variable var 0 (playa) o 1 (montaña). Recuerda, zTree no guarda texto ¿Cómo lo muestro? <><Variable | Layout> Muestra valor numérico (0 o 1) <><Variable | !text: opcion1=“texto a mostrar”; opcion2=“texto a mostrar”; > Muestra texto 41
Botones (1) • Permitevalidar la pantalla. Valida el valor introducido en un input item. • ¿Quéelementoscontiene? • Checkers: Permiteevaluar el valor introducido. Determinasiacepta la entrada o no. • Programas: Se ejectuasi checker acepta la entrada • ¿Dónde se puededefinir? • Standard boxes, grid boxes y todaslas contract boxes 42
Botones (2) Treatment > New Button… 43
Botones (3) Name: Etiquetamostrada No record created or selected: Para contract creation box pulsar el botón no creaunanuevafila. En una contract list box pulsar el botón no seleccionaunafila. Clear entry after OK: Después de pulsar el botón el valor de entradaesreseteado. Útilparaprevenirque el sujetointroduzca el mismo valor repetidamente Leave Stage: Fuerza la salida de la pantallasiestámarcada la opción Yes (si se cumple la condición del input). Marca la opción No, paraforzarpermanecer en la pantalla. Color: Pordefecto, si hay un input se muestra en rojo 44
Variables • El nombre de la variable puedesercualquierpalabracompuestaporletras, numeros o "_". • El primer caracterdebeserunaletra. • No se permitenblancosnisignos de puntuación. • Sensible a mayúsculas/minúsculas. • Ejemplos de variables permitidas: • A • Decision • decisionOtro • Decision_otro • Ejemplos de variables NO permitidas: • Decisión • Decision.Otro 45
Ejercicios Muestra las siguientes pantallas (input entre 0 y 1/decimal) 46
Ejercicios 47
Client’stable (1) Run > Client’stable Muestra los clientes conectados en todo momento. Una vez ha comenzado la ejecución del tratamiento muestra la pantalla (nombre de la etapa) en la que se encuentran Mientras no haya comenzado la ejecución del tratamientos, los clientes pueden ser cambiados de orden según se quiera. Una vez comienza, el orden de los clientes es fijo y no puede ser modificado. 48
Client’stable (2) Client: Nombre del cliente. En general es el nombre del PC, peropuedesermodificadosegún el parámetro /name de zleave. • State: Estado en el que se encuentra el sujeto. • “Ready”: los sujetoshanfinalizado. • "*** abc ***“: el sujetoestá en el active screen de la etapaabc • "– abc –“: el sujetoestá en el wainting screen de la etapaabc 49
Client’stable (3) Run > … ShuffleClients Ordenaaleatoriamente los clientesconcetados SortClients Ordena los clientesconectadospor el nombre: ejemplo: hoja1, hoja2. Muyútilparaasignar los pagos a los participantes SaveClientOrder Guarda el ordenestablecido en la tabla Clients y cómo acceder a los clientes a través de la red con el fin de reiniciarlos en caso de error 50