Índice
- O Curso R
-
- Tutoriais
-
- Apostila
-
- 6. Testes de Hipótese (em preparação!)
- Exercícios
-
- Material de Apoio
-
- Área dos Alunos
-
- Cursos Anteriores
-
IBUSP
Outras Insitutições
Linques
Visitantes
Outras Insitutições
Apresentação
Existem muitos estudos interessados nos movimentos das peças de xadrez domésticas (gen. Scacorumae) que vivem enclausurados num recinto fechado (denominado popularmente tabuleiro), porem pouco é sabido sobre o comportamento espacial dos seus parentes selvagens. Assim, após anos de trabalho de campo utilizando as técnicas mais avançadas de telemetria, o presente estudo analisa uma enorme quantidade de trajetórias do rei (Scacorum rex) e do cavalo (Scacorum equus) de xadrez em liberdade, a fim de conhecer melhor o seus padrões de exploração na natureza.
Descrição da função
O objetivo da função e simular t trajetórias formadas por m movimentos do rei e do cavalo de xadrez, e estimar medidas espaciais sobre as trajetórias descritas. A função deverá permitir estabelecer comparações das medidas espaciais entre as t trajetórias de 1 até m movimentos. O movimento das peças será aleatório, selecionando a cada vez dentre os 8 movimentos possíveis (a função incorporará uma tabela com esses movimentos). A fim de estabelecer melhores comparações entre as trajetórias do rei e do cavalo, a simulação das duas peças será criada a partir do mesmo processo aleatório, paralelamente. Para isso é preciso estabelecer um padrão de correspondência entre os movimentos de ambas as peças (fig. 1).
Medidas espaciais que serão obtidas a cada movimento (tanto para a trajetória do rei quanto para a do cavalo):
1)N° de movimentos (m): Todas as trajetórias começam no escaque x=0 y=0, assim, após o primeiro movimento são ocupados dois escaques. O número de movimentos mais 1 (m+1) nos indica o número máximo teórico de escaques que poderiam ter sido ocupados nessa trajetória.
2)N° de escaques repetidos (r ): A cada movimento nos interessa o acumulado de escaques repetidos.
3)Área líquida ocupada (l): Essa medida nos indica a ocupação real da peça durante a trajetória, o somatório de escaques distintos ocupados é o resultado desta operação: l=m+1-r.
4)N° de escaques do mínimo tabuleiro retangular que compreende a trajetória (tab): O mínimo tabuleiro é o resultado da fórmula:tab=(max(x)-min(x)+1)*(max(y)-min(y)+1). Precisamos somar 1 a cada lado do retângulo, porque a distância é calculada entre coordenadas localizadas no centro do escaque, assim devemos complementar uma metade do primeiro escaque e outra metade do último. Optamos pela forma retangular (contra o clássico tabuleiro quadrado) por ter uma melhor bondade de ajuste na trajetória.
5)Medidas proporcionais da área: Com o objetivo de comparar as distintas medidas de área propostas consideramos interessantes os seguintes índices:
-% Área líquida/ máx. teórico de área líquida:(l*100)/(m+1)
-%Área líquida/ mín. tabuleiro: (l*100)/tab
-% Máx. teórico de área líquida/ mín. tabuleiro: ((m+1) *100) /tab
Manipulação da função por parte do usuário
O usuário poderá escolher o número de simulações de trajetórias (t) e o número de movimentos das trajetórias simuladas (m), até um máximo plausível, que será indicado, assim como avisado com uma mensagem de erro, caso o usuário despistado introduza mal os dados. Depois o usuário poderá calcular vários estimadores (média, desvio padrão, mínimo e máximo valor) das 5 medidas espaciais propostas, sobre as t trajetórias simuladas, pudendo escolher o número de movimentos a analisar. Por exemplo: poderá responder a pergunta, qual é a média entre trajetórias simuladas da área líquida nos 100 primeiros movimentos? Também gostaria que o usuário pudesse escolher qualquer uma das simulações, com a quantidade m de movimentos que deseje, e a função mostrasse um gráfico com a correspondente trajetória do rei ou do cavalo.
Consideração final (justificativa)
O trabalho de Hurlbert (1990) mostrou os problemas de vários índices de dispersão espacial analisando a área do unicórnio de montanha (Monocerus montanus), inspirados nesse trabalho, consideramos que o xadrez oferece um modelo interessante para estudar a ocupação da área dos animais do mundo real.
Hurlbert, Stuart H. “Spatial distribution of the montane unicorn.” Oikos (1990): 257-271.
Comentários Lucas Teixeira
Muito obrigado Lucas, gostei muito da avaliação.
Tem razão, na verdade não foi bem argumentado o marco teórico, e também faltaram explicações sobre o funcionamento da função, vamos por pontos:
-Para mim a leitura de Hurlbert foi muito iluminadora, mas eu somente fiz referência a ela como exemplo de como um cenário fantástico pode ajudar à compreensão do comportamento de exploração de animais reais. O trabalho de Hurlbert testava índices de dispersão, mas essa não é a minha preocupação teórica.
-Tal vez eu vou defraudar vc, mas não é o interesse da função a dinâmica caçador-presa, e também as peças não vão ter times. A minha função é muito mais simples: cada simulação é do movimento de uma única peça se movimentando num tabuleiro infinito. Realmente acho muito interessante incorporar as ideias de vc, mas quase melhor deixar para o futuro (esse curso está sendo a minha primeira experiência com o R).
-Na verdade, com essa simulação estou por trás de uma ideia que levo pensando desde o mestrado. Realmente, não acho possível responder a minha questão com essa simulação, mas sim criar um arcabouço sobre o qual trabalhar mais na frente. Como nas sugestões de elaboração da proposta insistiam em que o projeto devia ser de uso geral, eu pensei apresentar a simulação de uma forma mais indeterminada, do tipo, “utilização do movimento das peças de xadrez como analogia do movimento dos animais”. Se vc está interessado no problema de fundo, eu posso tentar explicar, mas para mim é um pouco difícil de sintetizar. Basicamente, quero testar os problemas das medidas de superfície quando o período de registro é muito curto (por exemplo, medir a área diária de um alce tem algum sentido biológico (validade de constructo)? Essa estimação esta sujeita a um importante erro de medida (baixa fiabilidade)? As simulações clássicas, como o movimento browniano ou o Levy, estão baseadas em pontos (elementos sem superfície), pelo contrário o xadrez é um sistema baseado em escaques, que são unidades mínimas de superfície. A modelagem do xadrez identifica muito bem três tipos de superfície (menos evidentes nas simulações baseadas em pontos): 1) a área líquida, onde realmente foi observado, 2) a área máxima líquida teórica, que nos ajuda a avaliar o quanto teve sobreposição sobre o mínimo de sobreposição possível (m+1), e 3) o mínimo tabuleiro quadrado, que representa a área que medem os estimadores de superfície (kernel, MPC…), que precisam de alguma metodologia para criar um perímetro coerente ao redor dos pontos, incluindo áreas sem observações. Eu quero estudar a relação desses três tipos de área ao longo do tempo, e com muitas simulações, como uma primeira exploração ao problema que quero analisar.
Dúvidas sobre a função
1. Sua função retorna a trajetória das peças, simulada em função dos movimentos possíveis das peças. É isso?
A função cria uma matriz (tal vez mais de uma) onde estão estocadas as t simulações com m movimentos tanto do rei quanto do cavalo, lembremos que ambas peças vão ser criadas a partir do mesmo processo aleatório, a fim de poder estudar melhor as diferencias entre as suas trajetórias. Também estão estocados em matrizes os valores das medidas propostas em acumulado, ou seja, a cada movimento indicam como foram essas medidas ate esse momento da trajetória. O usuário deve poder acessar essa informação a través de estadísticos exploratórios (média desvio padrão…) das medidas propostas, calculadas entre as t simulações, e com o número de movimentos (m) que o usuário deseje. Voltando para o meu problema, eu posso estar interessado em como muda a relação área líquida/m+1 com poucos movimentos (períodos curtos de tempo) e com muitos movimentos (períodos compridos de tempo).
Por último, já que vamos criar simulações espaciais, deve ser interessante poder observá-las (não somente extrair dados frios delas). Assim, estava pensando em que o usuário pudesse escolher a simulação com a quantidade de movimentos que quisesse, e poder plotar um gráfico.
2. A tabela de entrada a que você se refere seria um dataframe em que as linhas seriam os movimentos das peças? E as colunas? São as medidas espaciais?
Essa é a tabela de entrada:
Simplesmente, tem os 8 movimentos básicos do rei (kx,ky) e do cavalo (cx,cy), que, como falado, estabelecemos uma correspondência entre eles (ver figura 1).
3. As medidas espaciais serão calculadas ou elas já estão no dataframe inicial?
A função cria t vetores de m comprimento enchidos aleatoriamente com os 8 movimentos mostrados na tabela acima (ex: 1, 2, 8, 3, 8, 7, 5…). A partir desses vetores são criadas as trajetórias, por exemplo, se o primeiro movimento é 1, coloca um 0 no vetor x do rei e um -1 no y, e no cavalo coloca um 1 na x, e um -2 na y. Depois de criadas as trajetórias são calculadas as medidas espaciais. Todas as medidas são calculadas e estocadas por default.
Muito obrigado, foi muito bom o seu feedback!!!
Comentários Lucas Teixeira
Oi Lucas,
Obrigado de novo, tem sido muito útil a sua avaliação, vou fazer uma versão final com o esquema que vc recomendou (apresentação, descrição,…) conto com vc para corrigir o conteúdo, a forma, a claridade expositiva, assim como filtrar as minhas espanholadas.
Como vc falou começa com um tabela padrão, nas provas que estou fazendo abro ela com um read.csv, no futuro deve se abrir automaticamente com a função, se vc acha melhor outra forma, toda recomendação é bem vinda.
Comentários Vitor Rios
Olá Vitor, muito obrigado pelas suas dicas.
Segundo a sua revisão, eu entendi que seria interessante que a função permitisse ao usuário introduzir uma tabela de movimentos, digamos, primários, construída por ele mesmo. Eu acho uma boa ideia, nesse caso, eu imagino que tenho que indicar à função qual é a fonte de dados dentre: 1) a tabela introduzida pelo usuário e 2) o default (rei e cavalo). Também deveria programar o processo aleatório de forma que permita um número variado de movimentos primários (e não só de 1 a 8). Eu posso tentar fazer dessa forma, mas também considero que na opção “do it yourself” deve ser responsabilidade do usuário entender como criar uma tabela de movimentos coerentes com a função. Eu não posso assegurar que a função vai dar certo com qualquer tipo de informação primária, existem muitas possibilidades da função dar errado, por exemplo: se o usuário introduz vetores x e y com tamanhos diferentes, ou se coloca caracteres, ou se não indexou corretamente os movimentos, ou se coloca movimentos muito grandes e sobrecarrega a função, ou se coloca números fracionados.. compreendeu? Vc. que acha?
Quando você diz que os movimentos serão gerados pelo mesmo processo aleatório, você quer dizer sorteados a partir da mesma distribuição que será sorteado um único número por passo que será usado pelos dois tipos de peças?
Acho que é isso mesmo, mas mesmo assim vou colocar um exemplo para não deixar nenhuma sombra de dúvida. Imagine que o usuário pediu para a função criar uma única trajetória (t=1) de 6 movimentos (m=6). A função então gerará uma sequencia aleatória escolhendo seis vezes (com reposição) dentre os 8 movimentos primários, por exemplo: 2, 2, 8, 1, 3, e 4. A partir dessa sequencia a função cria a trajetória do rei (ver a “rosa dos ventos cartesiana” da figura 1) que seria: SE (sudeste), SE, SO, S, E e NE. Assim como a trajetória do cavalo: ESE, ESE, SSO, SSE, ENE, e NNE.
Segundo o meu ponto de vista é bom criar ambas as trajetórias a partir do mesmo processo aleatório, pois permite uma melhor comparação entre a trajetória das duas peças. Porém, se por algum motivo o usuário está interessado em que as trajetórias estejam construídas por processos aleatórios diferentes, sempre pode rodar a função duas vezes e comparar os resultados do rei da primeira rodada com os resultados do cavalo da segunda.
Um abraço, e obrigado de novo.
Comentários Lucas
Muito obrigado Lucas e Vitor,
Se vcs acham apropriado, vou tentar de momento programar o rei e o cavalo, dentro da função por default, mas também vou tentar a opção de “do it yourself”, tal vez o usuário pode criar uma peça inventada interessante (mas agradeceria se essa parte ficasse como objetivo “não contratual”…:]). Gostei muito da ideia do S. episcopus, não só para estudar o seu padrão de exploração, mas também do seu comportamento reprodutor em liberdade
Na verdade escolhi o rei e o cavalo por ser os movimentos mais similares aos animais, ao estarem limitados, e poder se movimentar em todas as direções.
É ótimo poder contar com vcs nesse processo, também espero poder pedir ajuda para vcs nas dúvidas com o R.
Muito obrigado, obrigado aos dois!!!
Comentários Vitor Rios
Apresentação
A escritura maia utilizada pelos povos pré-colombianos do Yucatán foi destruída pelos espanhóis quase na sua totalidade. Ao longo do século XX, e com muitas dificuldades, foi decifrada uma boa parte, o que nos permite poder escrever com ela (ler maia é mais difícil).
Descrição da função
Dentro da função é introduzida uma palavra por sílabas, e a função devolve uma imagem com a palavra escrita em maia.
Manipulação da função por parte do usuário
Segundo o usuário abre a função aparece uma serie de sílabas numa tabela (na primeira coluna estão escritas as consonantes e na primeira fila as vogais). O usuário deve construir a palavra adaptando-a aos fonemas oferecidos (o maia não tem alguns sonidos das línguas ocidentais). Além disso, estarão explicadas algumas dicas para converter melhor a palavra. Então o usuário introduz um vetor com as silabas selecionadas, se introduz alguma sílaba que não foi oferecida mandará uma mensagem de erro. A função tem incorporado um arquivo de imagens com um símbolo por cada fonema, e assim, devolve numa imagem com símbolos selecionados por ordem (a palavra).
Consideração final (justificativa)
Certamente, essa função é mais um brinquedo do que uma verdadeira ferramenta para criptologistas, ou um dicionário eletrônico para turistas perdidos em Cancún. A utilidade estaria mais na línea do material didático infantil criado para manter viva essa maravilhosa escritura. Sinceramente, eu acho que vai levar mais trabalho fazer o banco de imagens e a tabela explicativa do que lidar com o R, eu pessoalmente estou mais empolgado o primeiro projeto.
Comentários Lucas Teixeira
Que bom que gostou!!! As palavras em maia podem ser escritas de muitas formas, existem vários símbolos para cada sílaba, que podem ser girados e colocados deixando muita liberdade criativa ao escriva (e dando muitos dores de cabeça a quem quer decodificá-los). O nome de vc poderia ser como o da imagem, o “s” final se converte em sa, pois no maia não existem consonantes soltas, adquirem a vocal anterior.
Comentários Lucas Teixeira