martes, abril 28, 2009

Filogenia de 73060 eucariotas


Finalmente, el Behemot vio la luz. Nuestro paper de un análisis de parsimonia de 73060 especies de eucariotas (y 7800 caracteres mol+morf) acaba de ser puesto en linea en Cladistics [doi: 10.1111/j.1096-0031.2009.00255.x].



Pablo hizo un trabajo brutal optimizando cada cosa en las búsquedas de arboles con TNT. Y todos aquí trabajaron intensamente para poder manejar toda esa cantidad de datos!

Al principio me sorprendió la enorme exactitud de los árboles encontrados, porque el set de datos esta lleno de entradas faltantes. Además, me puse muy contento porque al incluir los datos morfológicos, aún a esta escala tan grande, los resultados fueron mejores que usando únicamente datos moleculares!

Hace uno meses, esto fue posteado en dechronization:
[Cassy Dunn] hizo un llamado convincente acerca de la necesidad de técnicas análiticas revolucionarias ahora que entramos en una era en que los alcances de la computación serán más limitantes que la disponibilidad de datos.
Yo creo que nuestro trabajo muestra exactamente lo contrario: nuestras herramientas de búsqueda son lo suficientemente buenas, pero no hay datos suficientes (el conjunto de datos más grande es SSU con 20000 especies, y solo un puñado de genes tiene más de 10000 especies).

Otra lección?.... No necesitamos los super-árboles!

lunes, abril 27, 2009

A phylogeny of 73060 eukaryotes


Finally, the behemoth has seen the light :). Our paper with a parsimony analysis of 73060 eukariotic species (and 7800 mol+morf characters) was just published (as “online early”) in Cladistics [doi:10.1111/j.1096-0031.2009.00255.x].


Pablo does a wonderful work optimizing every aspect of the tree-searches in TNT. And all of the guys worked really hard to manage that amount of data!

At first I was surprised with the high accuracy of the trees founded, because the data set is full of missing entries. Also, I fill happy because the inclusion of morphological data, even at this huge scale, produce better results than molecules alone!

Just few months ago, this was posted in dechronization:
He [Cassey Dunn] makes a convincing case for the idea that a revolution in analytical techniques will be needed as we enter an era during which computational capabilities will be more limiting than data availability.
I think our study shows exactly the inverse: that our actual search capabilities are good enough, but we do not have sufficient data (the largest gene set is SSU with 20000 species, and a handful of genes has more than 10000 species).

The second lesson?... We do not need super-trees!

viernes, abril 24, 2009

Algorithms for phylogenetics 0a: Bitfields


Intro

I want to start a series of post about the algorithms used in phylogenetic analyses. I feel a bit disappointed with the entry on computational phylogenetics (and related subjects) in wikipedia, that are somewhat biased towards model-based methods and "bioinformatics", with a poor representation of algorithms for phylogenetics.

There are two outstanding examples of algorithms for phylogenetics on the web. The book of Wheeler et al. [1], and, in a similar vein, a manuscript by DeLaet [2]. But their presentation of the algorithms is somewhat general, that is be nice for educational purpouse, but in some cases, far away from the actual implementation in computer software.

As the presentation of the algorithms in [1] and [2] is excellent, I want to focus on the implementation. The idea is to go from simpler to more complex algorithms (as far as I can comprehend them xD).

I want to acknowledge Pablo Goloboff. He always have the time to discuss with me about algorithms (and any topic on methodological phylogenetics) :D. Of course, any error in my implementations are my own errors!

As this series progress, I will post the source code on google source or sourceforge, if someone wants to check it, requires an knowledge of C programming language. Thanks to Rubén who showme some tips with the HTML :).

Bitfields

Characters are a basic component of phylogenetic analysis. For simplicity assume that we only have a single character in each terminal. Each character can be stored into a variable, assigning to them 0, 1, 2... as indicated by the character state. This idea is implicit in the original description of Wagner's "groundpland divergence" [3], and in Farris' formalization [4, see 5]. Then operations between characters would be operations of ranges. But it is more simpler to think about characters as a set of states [4, 6]. Then operations between characters would be set operations. This set has a peculiar property: they are perfectly boolean, that is, a taxon has or has not a particular state. This can be translated in two positive consequences: (i) character states can be stored as a bitfield: (ii) character operations are bifield operations.

Computers store numbers as binary numbers. A bitfields use this characteristic to represent a set of positioned bits. This example shows it better:
State    binary representation       "Number" (human)
0 0001 1
1 0010 2
2 0100 4
3 1000 8
0, 1 0011 3
1, 3 0101 5
As can be seen, each state has his on bit position, and the states combination is just the union of its states. Many programming languages include operations to work directly on bits (not, and, or and xor), then the translation from set operations to bit operations is direct.

In this series I will use char to store character states. In C, char has 8 bits, then only 8 states can be stored. I define the bitfield with a typedef, so changing the number of bits on the bitfield (and then the number of states) is easy.
#define BITS_ON_STATE 8
#define ALL_BITS_ON 255
typedef char STATES;
This small example reads the caracters of a taxon, from a file (in), and store it into an array of characters (chars). The number of characters is nc, and the functions getc (in stdio.h) reads a single character from the file, SkipSpaces ignores the blank characters, and isdigit (ctype.h) detects if the character is a number.
for (j = 0; j < nc; ++ j) {
error = SkipSpaces (in);
if (error != NO_ERROR) return error;
c = getc (in);
if (isdigit (c))
chars [j] = 1 < < (c - '0');
else if ((c == '?') || (c == '-'))
chars [j] = ALL_BITS_ON;
else return BAD_FORMAT;
}
The operation chars [j] 1 < < (c – '0') substract the ASCII value of '0' (30) from the ASCII value stored in c (a number, so it is form 30 to 39). The resulting value is used to shift the bits of 1. For example if a '0' is readed the operations are:
chars [j] = 1 < < (30 – 30)
chars [j] = 1 < < 0
[0000 0001 < < 0 = 0000 0001]
chars [j] = 1
If a 5 is readed
chars [j] = 1 < < (35 – 30)
chars [j] = 1 < < 5
[0000 0001 < < 5 = 0010 0000]
chars [j] = 32
The 1 is shifted five bits to the left.

Note that inapplicables and unknowns are coded with all bits on.

This work nicely with non additive characters. For additive characters, it is possible to “recode it” as several binary characters [7][8], then it is possible to use the character as independent binary characters.

There are more sophisticated usages of bitfields, packing several characters in a single variable (for example, eight 4-bit characters can be stored into a singel 32-bits variable) [8][9]. This packing allows an speed up during searches, because several characters can be examined simultaneously.

References
[1] Wheeler, W. et al. 2006. Dynamic homology and phylogenetic systematics: a unified approach using POY. American Mus. of Natural History, published in cooperation with NASA. online: http://research.amnh.org/scicomp/pdfs/wheeler/Wheeler_etal2006b.pdf
[2] DeLaet, J. 2005. Pseudocode for some tree search algorithms in phylogenetics. Manuscript online: http://www.plantsystematics.org/publications/jdelaet./algora.pdf
[3] Wagner, W.H. 1961. Problems in the classification of ferns. In: Recent advances in botany. Toronto Univ. Press. pp. 841-844.
[4] Farris, J.S. 1970. Methods for computing Wagner trees. Syst. Zool. 19: 83-92.
[5] Goloboff, P.A. et al. 2006. Continuos characters analyzed as such. Cladistics 22: 589-601. doi: 10.1111/j.1096-0031.2006.00122.x
[6] Fitch, W.M. 1971. Toward defining the course of evolution: minimum change for a specific tree topology. Syst. Zool. 20: 406-416.
[7] Farris, J.S. et al. 1970. A numerical approach to phylogenetic systematics. Syst. Zool. 19: 172-189.
[8] Moilanen, A. 1999. Searching for most parsimonious trees with simulated evolutionary optimization. Cladistics 15: 39-50. doi: 10.1111/j.1096-0031.1999.tb00393.x
[9] Goloboff, P.A. 2002. Optimization of polytomies: state and parallel set operations. Mol Phyl. Evol. 22: 269-275. doi: 10.1006/mpev.2001.1049

Algoritmos en filogenia 0a: Campos de bits


Intro

Quiero iniciar una serie de posts sobre los algoritmos usados en análisis filogenético. El motivo principal fue ver el árticulo sobre “filogenética computacional” (y los tópicos de sistemática) en wikipedia, que pues me parecen algo sesgados hacía los métodos basados en modelos, y en general los algoritmos de filogenia no están muy representados.

Hay un par de ejemplos muy buenos en i-net de algoritmos de filogenia, uno es el libro de Wheeler et al. [1], y en una vena similar, un manuscrito de DeLaet [2]. Sin embargo, los algoritmos que presentan son más bien generales, lo cual es muy bueno desde el punto de vista didáctico, pero en varios casos, alejado de lo que hacen los programas en la actualidad!

Como esas fuentes son muy buenas, espero enfocarme más en el aspecto de la implementación de los algoritmos. La idea es pasar de los más sencillos a los más complejos (en la medida en la que yo pueda comprenderlos xD).

Antes de empezar, pues quiero agradecer a Pablo Goloboff, que siempre ha estado dispuesto a discutir de algoritmos conmigo :). Por supuesto, los errores que tengan mis implementaciones son mis errores!

A medida que avance, iré posteando el código fuente en google code o sourceforge, por si desean examinarlo, requiere que sepan algo de C. El HTML tiene problemas con los símbolos mayor-que y menor-que, por los que los mostrare en estos posts como texto, en vez de usar el símbolo. Gracias a Rubén por el tip del HTML :)!

Campos de bits

Un componente básico del análisis filogenéticos son los caracteres. Asumamos que solo tenemos un carácter para cada terminal. Uno bien podría guardar cada estado en una variable, por ejemplo asignandole 0, 1, 2... según corresponda. Una idea así esta implícita en la descripción inicial del “groundpland divergence” de Wagner [3], y más o menos, en la formalización de Farris [4, ver 5]. Las operaciones entre caracteres serían operaciones de intervalos. Pero es mucho más sencillo ver a los caracteres como un conjunto de estados [4, 6]. Las operaciones entre caracteres serian operaciones de conjuntos. Esos conjuntos tienen además una característica particular: son perfectamente booleanos, es decir, un taxon tiene o no un determinado estado. Esto tiene dos consecuencias positivas: (i) podemos guardar el conjunto de estados como un campo de bits; (ii) las operaciones entre caracteres son operaciones de los campos de bits.

Las compus guardan los datos como números binarios. En un campo de bits, usamos esa particularidad para representar conjuntos de bits. Un ejemplo, aclara mejor la situación:
Estado    Representación binaria    "Número" (humano)
0 0001 1
1 0010 2
2 0100 4
3 1000 8
0, 1 0011 3
1, 3 0101 5
Como se ve, cada estado individual tiene su propio bit, y la combinación de estados es simplemente la unión los estados. Muchos lenguajes de programación incorporan operaciones para trabajar directamente con bits (not, and, or y xor) con lo cual la traducción de operaciones de conjuntos a operaciones de bits es directa.

En esta serie voy a utilizar un char para guardar los estados de carácter. En C, char es de 8 bits. Yo lo defino con un typedef, de manera que después es posible cambiar el número de bits en el bitfield.
#define BITS_ON_STATE 8
#define ALL_BITS_ON 255
typedef char STATES;
En este pequeño ejemplo, se leen los caractes de un taxon, desde un archivo (in), y se guardan en un array de caracteres (chars). El número de caracteres es nc, y se usan las funciones getc para leer caracteres de texto, SkipSpaces para ignorar los espacios de texto, y isdigit para reconocer si el carácter de texto es un número.
for (j = 0; j < nc; ++ j) {
error = SkipSpaces (in);
if (error != NO_ERROR) return error;
c = getc (in);
if (isdigit (c))
chars [j] = 1 < < (c - '0');
else if ((c == '?') || (c == '-'))
chars [j] = ALL_BITS_ON;
else return BAD_FORMAT;
}
En la operación chars [j] = 1 < < (c – '0') se resta el valor ASCII de '0' (30) al valor ASCII guardado en c (es un número, va de 30 a 39). El valor de esa resta lo usamos para correr los bits de 1. Así por ejemplo, si se lee un '0', la operación seria:
chars [j] = 1 < < (30 – 30)
chars [j] = 1 < < 0
[0000 0001 < < 0 = 0000 0001]
chars [j] = 1
Si leemos un 5
chars [j] = 1 < < (35 – 30)
chars [j] = 1 < < 5
[0000 0001 < < 5 = 0010 0000]
chars [j] = 32
Corrimos el 1 cinco bits a la izquierda.

Observen que los no aplicables o desconocidos, se codifican con todos los bits encendidos.

Esto funciona bastante bien para caracteres no aditivos. Para caracteres aditivos, es posible "recodificarlos" como varios caracteres binarios [7][8], una vez recodificados es posible utilizarlos como si fueran caracteres no aditivos independientes.

Hay formas más sofisticas de usar los campos de bits, uniendo varios caracteres en una sola variable (por ejemplo, en una variable de 32 bits, se pueden usar 8 caracteres de 4 bits, como nucleotidos) [8][9]. Ese empaquetado permite una evaluación muchisimo más rápida de los caracteres durante las búsquedas, puesto que en cada operación se pueden revisar simultáneamente varios caracteres.

Referencias
[1] Wheeler, W. et al. 2006. Dynamic homology and phylogenetic systematics: a unified approach using POY. American Mus. of Natural History, published in cooperation with NASA. online: http://research.amnh.org/scicomp/pdfs/wheeler/Wheeler_etal2006b.pdf
[2] DeLaet, J. 2005. Pseudocode for some tree search algorithms in phylogenetics. Manuscrito online: http://www.plantsystematics.org/publications/jdelaet./algora.pdf
[3] Wagner, W.H. 1961. Problems in the classification of ferns. En: Recent advances in botany. Toronto Univ. Press. pp. 841-844.
[4] Farris, J.S. 1970. Methods for computing Wagner trees. Syst. Zool. 19: 83-92.
[5] Goloboff, P.A. et al. 2006. Continuos characters analyzed as such. Cladistics 22: 589-601. doi: 10.1111/j.1096-0031.2006.00122.x
[6] Fitch, W.M. 1971. Toward defining the course of evolution: minimum change for a specific tree topology. Syst. Zool. 20: 406-416.
[7] Farris, J.S. et al. 1970. A numerical approach to phylogenetic systematics. Syst. Zool. 19: 172-189.
[8] Moilanen, A. 1999. Searching for most parsimonious trees with simulated evolutionary optimization. Cladistics 15: 39-50. doi: 10.1111/j.1096-0031.1999.tb00393.x
[9] Goloboff, P.A. 2002. Optimization of polytomies: state and parallel set operations. Mol Phyl. Evol. 22: 269-275. doi: 10.1006/mpev.2001.1049

lunes, marzo 30, 2009

doptores

Esta semana vi la defensa de las tesis doctorales de dos chicos aquí de Tucumán. Guillermo Suarez que trabaja con musgos, y pues mostró un enorme trabajo sobre musgos. Es tremendo lo que hay que hacer para poder sacar caracteres morfológicos en plantas! Además, pues un excelente trabajo de taxonomía y filogenética combinado :). También se presento Sebastian Barrionuevo, el trabaja con unas ranas especialmente acuáticas, muchas de ellas viven en grandes alturas, por lo que es muy complicado muestrearlas. Una excelente labor de morfología, y de unión de la filogenia con otros campos, como la ontogenía y de alguna manera la ecología.

También se presentaba Santiago Catalano en BsAs, pero pues no me pude comunicar con el, además de que estaba muy cansado, pues fue al otro día del toque de Radiohead (me hubiera quedado dormido! xP). Y también supe de un chico, Ignacio Escapa, de Trelew (muuuy lejos xD) que presento uno de los posters que más me gusto en el meeting de la Willi Hennig.

Tanto Santí como Sebastian ganaron premios en el meeting ;).

Esperemos que cada día sea mayor la cantidad de gente que trabaja en cladística :D, y que el interes por la morfología siga siendo un área fuerte!

sábado, marzo 21, 2009

Just some links

There are some nice things on line lately :).

First, Rod Page talk at NHM of London, he puts his slide-show on line, there is also a video and a pod-cast of the talk (I do not see them :P). The slide-show can give a nice idea about the talk. There are two important things on the talk: (a) the importance of the availability of data! I just agree with him: data must be freely available, and previously published data must be easy accessible; and (b) Scientific data must be readily usable, for example the “Encyclopedia of life” is just a fun site just like wikipedia or the web tree of life, they are full of nice pics and info, but cientifically irrelevant: no hard data are attached to it (i.e. morfological info, character matrices), this contrast with the most simpler ispaces of Page!

Although I do not like some of the comments, Malte Ebach made a good point against the revival of a “pragmatic” classification (for horticulture, for example). I think that the only rule of classification is the phylogeny. If an immutable classification is the objective, the only way I can thing is an “alphabetic” or “numeric” system, but the preservation of “traditional” names is not the solution. Maybe, it is better a change of the rules...

And speaking of change of the rules, I recommend the continuos checking of several of Mike Keesey posts. I do not think that phylocode is the solution (in fact I think that it is even worse than traditional Linnean classification), but he writes interesting things about databasing!

Also, it is seems to change some rules about the publication of names for taxonomy (via Evolving thoughts). I thing that only peer reviewed publication must count, at least from the last fifty years or so. Also I thing that new names, at least for species must be published on journals instead of books...

miércoles, noviembre 12, 2008

Core coding

En estos días, algunas de las ideas que tengo de mi proyecto, no están saliendo como yo quería, así que me he dedicado a la programación de algunos detalles computacionales... como el asunto, aunque muy relacionado con computadoras, pero poco con cladística (aparte claro, de ser parte de mi proy xD).. lo deje en mi blog personal :P.

English version:

How can Java (and several other languages) programmers live without pointers?

lunes, noviembre 03, 2008

Hennig XVII: “Live” blogging, day 4

It was difficult to get up early after la fiesta salvaje, but more difficult to not fall asleep, not because the presentation were boring, but because the whole meeting schedule catch me!

Torbjorn Ekrem try to produce “robust backbone trees” to perform phylogenetic analyses, but he uses a form of character elimination, so I don't like his idea.

Pancho Prevosti, works with a simultaneous analysis of otters, using morphology, molecules, and fossils.

Torsten Dikow shows a phylogenetic analysis of Asilidae robber flyes, into a context of disponible fossils of the group. And Johnatan Liria, uses morphometrical data, using TNT, to search the phylogeny of some particular Culicidae mosquitoes. For the moment, I feel really suspicious about the use of “warps” or “PCA” as characters!

Gabriel Ruá, explore several k values to choose a k value, and analyze a clade of Asteraceae. But I think that his use of a broad range of k values, made his inferences somewhat useless.

Tim Crowe, analyze a big data set to evaluate the position of some african quails, he shows that many identifications based solely on feather colors are plainly wrong. But I like his exposition of several song calls by these quails.

Using the large data set, Norberto Giannini examine some phylogenetic hypothesis of mammals, and found some interesting consequences! I like the way in which he present the results, and the good and problematic points of the study.

Gitte Peterson shows a weird behavior of his molecular data, and she connects it with paralogy, and mRNA edition. Although I think that there are better ways to attack the problem, I think that her exploration of the results was wonderful!

Then Kevin Nixon shows how some character codings used for the origin of seed plants, are highly problematic, because they are based on a preconception and a chain of errors in the description of some fossil material.

After lunch, Fabián Michelangeli gives a talk about a Melastomataceae clade, he uses molecular results, but also include a mapping of an initial set of morphological characters that he and his co-authors were working, and how this evidence to be added fit to the molecular results. I like the detailed working of his fruit characters! In the same line of Melastomataceae Renato Goldenberg talks about the preliminary results of a more inclusive project of this group of plants.

Pd. Although published few days after the meeting, this post was written the last day of the meeting. I not publish it before, because after the last talk, I like everyone, go out to celebrate the end ;).

Pd2. As part of the organization of the meeting, I want to thank every one for comming!! :D

viernes, octubre 31, 2008

Hennig XVII: “Live” blogging, day 3 (banquet)

Of course, one of the most expected things of the Hennig meeting was the banquet, and the banquet speech :)!

Steve Farris announced the the students aware, two argentinian, and friends with some of them :). Sebastian Barrionuevo “el negro”, wins the Rosen Award for best poster. Santi Catalano wins the Hennig award for the best talk (about the use of landmarks in phylogenies).

The banquet speech was given in a pair. Jyrky Mouna was originally assinged for the speech, but he was unable to come, so Kevin Nixon take his spot, talking about the different kinds of trees. It was EXTREMATELLY funny xD. As the meeting is joining with “Reunión Argentina de Cladística y Biogeografía”, Julian Faivovich dío su charla en español ;)... Por su puesto, la charla estaba dirigida sin lugar a dudas a el publico argentino, pero con el background de la misma reunión era suficiente para divertirse mucho!! Fue GENIAL!

My greetings to both speakers :D!!

jueves, octubre 30, 2008

Hennig XVII: “Live” blogging, day 3

Today was a highly theoretical day ;)... Most of the talks were highly methodological, with some scattered practical works.

Ward Wheeler, in a line similar to Grant and Kluge, argues that “objective support”, like Bremer support of Likelihood ratios are different to “average support”. His main argument, is that objective support is a better measure than average support, because it is based on a direct comparison of optimality criterion... I'm not agree xD.

Next, Pablo Goloboff showed that the common argument against weighting, that a character which is poor in clade is underweighted in a clade in which character has low homoplasy, is a problematic one, and that parsimony, as we know it, imply homogeneous weighting across the whole cladogram.

John Wenzel seems to be unsuccessful to show a different way to attack consensus trees. I think that agreement subtrees, the method that he defends is not as good as reduced consensus that can be found with TNT.

In an interesting talk, from philosophical, and statistical point of view, Chris Randle, showed that as actually implemented, Bayesian analysis in not bayesian, because the impossibility to implement a real definition of clade priors.

After coffee break, Steve Farris give an entertaining and clever talk about some misrepresentation of ideas of support by Grant & Kluge, and of course, re-affirms his masterful conclusion from his 1983 classic: parsimony is minimization of ad hoc hypotheses of homoplasy. I'm very happy to see the one that gives shape to actual numerical cladistics (and, I thinks, the major contributor of the theoretical development of phylogenetics in general!).

Then, a bunch of papers based on Pablo's implementation of continuous characters, using Farris' optimization, using Opiliones. But the most interesting contribution was from Santiago Catalano, who shows that landmark data can be viewed as a generalization of Sankoff's parsimony!

Afternoon starts with a presentation of the possibilities of EOL.org (Encyclopedia of Life) by Torstein Dikow, actually, apart of being as wonderful as Wikipedia, I do not see any application for EOL... (see Page's blog!)

Matthew Yoder, shows some wonderful ways to work using open source, in the development of his software for multi-author phylogenetic studies, with his sever-based Mx.

Then Rasmus Hovmoller, shows some interesting work to understand the spreading of avian influenza A, unfortunately, external problems was an obstacle to enjoy their results.

Federico López gives a talk about using conservation indexes to conservation in amazonia. I'm quite suspicious of that kind of indexes (although they are also bad, I think that Faith's PD is far better than Vane-Wright indexes!).

Norberto Giannini shows a new way to treat correlation of characters (“comparative method”) into a truly phylogenetic way. The method is excellent, and I think a real improvement in that field!

Fernando Noll, showed a beautiful work of behavioral data for Meliponini bees, that include oviposition and nest architecture.

Jeffrey Skevington use dragonflies from Fidji, and he tries to explain the origin of sexual bias on this beautiful insects. Juan Larrain shows his molecular analysis of a group of mosses, and compare his results with a preliminar set of morphological characters.

Martín Ramírez gives an excellent talk about the usefulness of ontologies for phylogenetic analysis! I feel that ontologies are an important step in the maintainability of morphological data (and their subsequent usage), but I think that although wonderful, the re-using, specially from authors extern to the original work, seems to be difficult (at least, as actually doing).

To finish the day, Johnatan Liria talks about k selection using some of my old TNT scripts xD...

miércoles, octubre 29, 2008

Hennig XVII: “Live” blogging, day 2

Today the meeting starts with a highly molecular morning. Gonzalo Giribet present a symposium about new methods for “phylogenomics” (organized by him, Ward Wheeler, and Jirky Mouna). Three talk were about the use of gene order, inversions, recombination, in the context of phylogenetic analysis. All of the presented analysis are POY-oriented ;). It is sad that Andres Varón, a colombian working with POY, was unable to assist.

The most interesting one, is the talk of Gonzalo who insists the usefulness of morphological data, and present some new analysis with his EST data for metazoa (published in Dunn et al. 2008), with more than 200 morphological characters for metazoans in a network of experts. His analysis show that morphology provide evidence for grouping at all levels of the tree. He was very suspicious about the “groundpland” coding. I always prefer exemplar coding, but sometimes, some useful information available from not directly analyzed terminals (for example, several developemental data) can provide an excellent source of information.

Prosanta Chakrabarty, try to test sexual selection in a group of luminous fishes, I get impressed with the diversity of that fishes, but, I think that the questions about selection preasures can not be answered in the way showed by Prosanta (or in any way!).

Next, there are two nice works on Curculionids. In the first Analía Lanteri, showed a particular group of broad nose weevils, then Adriana Marvaldi, showed his most recent advances in the understanding of the whole morphology (and phylogeny) of Curculionoidea, and how many of the sequence data recently assembled for that beetles, is highly congruent with the morphological results.

Afternoon talks are more interesting to me, because they are about biogeography ;) --I only have 3 interests: parsimony methodology, morphological phylogenetics, and REAL biogeography xD--.

In the first one, Peter Hovenkamp, shows a very interesting parallel between ideas form phytosociology and endemism, he founds that many of the implementations of Josias Braun-Blanquet (or the europoean school of phytosociology really did not implement that methods! He thinks that NDM (of Szumik and Goloboff, 2004) can be a better tool for phytosociological ecology!

Another wonderful talk was giving by Claudia Szumik, who made an analysis of endemism of northern argentina. The good thing about the study, is that it includes data taken directly from the experts of each group, with several data collected by Claudia and their co-authors!

Loló (Dolores Casagranda) present a comparison between NDM and PAE, I work on that talk, so I feel that a I will give a biased report, so I pass xD.

Erika Parada, an student from my undergrad university, talks about his analysis of northern andes, she uses tree-fitter,  a program that I do not like a bit :P, because it has several problems, I think she made a great work, but unfortunatelly results with TF are, for me, doubtful! :P

I do not like the talk from Dalton Amorim, but the discussion that follows the talk was very interesting, with James Liebherr, given several strong (and clever!) points against Dalton ideas.

martes, octubre 28, 2008

Hennig XVII: “Live” blogging, day 1

Yesterday several people came to the reception, I talk with several nice people, it was a very cool afternoon :D!

Today, the meeting start in proper. The site, San Javier, is wonderful, it is atop of a mountain, just in front of Tucumán, so you can see the whole plain that extends to the east, incluing, of course, the city of Tucumán. Excellent place!

There are several talks, some of them are somewhat difficult to get (to me at least xD), but overall, they are really nice. I really, really like the talk of Cecilia Kopuchian about the phylogenetics of Furnaridae (Aves). She combines in a wonderful way the pics of his characters, with his results, so even, if you know noting about the group (like me), you learn several thinks about it, and you are always on the subject of the talk!

For paleontologist, Diego “el caco” Pol give a talk about some fossil Crocodiles from Argentina, and Africa, Mesosuchia (I hope I remember right xD) which were the last surviving taxa of non-modern Crocs.

Julián Faivovich, give a molecular talk about phylogenetics of Hylidae, and to keep the talk interesting, he tries to put his work into a some biogeographical framework (“one taxon” approach, but he tries to make some predictions with his data). I think his results can be very interesting for POY users, as he found a (manual) trick to speed up searches.

Afternoon, James Liebherr, gives a talk about Blackburnia a beetle from Hawaii, he uses live taxa, and several “semi” fossil taxa found in a cave. Jim speaks somewhat slowly, but I love the deep of his work!

Camilo Mattoni, shows the development of an Scorpion data set, from the use of some general data sets of morphology, to specific morphology of the Bothriuridae, to different molecular markers, to a simultaneous analysis.

Louise Crowley works on morphology (and mol. Secs) of a very hard group (also a literal meaning xD), such as oysters. I can believe how many chars you can found in a single shell!

And of course, Santi and Marcos talk about the redefinition of large :).

martes, octubre 21, 2008

Next week: A summit of cladistics


The Hennig meeting will be in the next week! Here everyone is working on several details :).

I do not know if Hotel sol has WiFi connection, if it does, I will “live blogging” about some speechs ;)... if not, then I hope to post a review in the next week xD.

The official web site of the meeting is: www.hennig27.com.ar, there you can found the program, it looks really nice!! :D

viernes, julio 18, 2008

“Weighting” tress with TreeFitter

TreeFitter [1] is a program for matching phylogenies with associations used in biogeography and co-evolutionary studies. It has some problems, as seems that Treefitter move to open-source, maybe this problems can be solved! Here I address some problems produced with the 'weighting tree' procedure. The analogous problems is found in some phylogenetic methods and programs, and I address it laterally (they consequences are fully discussed in [2]).

As many biogeographic programs [3, 4, 5] TreeFitter only dealt with perfectly dicotomic trees. To overcome this fault, it implements a weighting of trees. Then you can put all the dicotomic trees found in the phylogenetic analysis and put a fractional weight to each tree. For example, if you found four trees, each one would be weighted by 1/4. This is in fact a majority rule consensus. Ronquist, who is a defender of bayesian methods, see the weighting of trees as a positive characteristic as it covers the 'uncertainty' of the analysis [6]. Then it express the 'confidence' (support in a most relaxed version) of each clade. But contrary to intuitive expectations, majority rule consensus have nothing to do with the support of a determinate clade. Instead, they favoring ambiguous topologies! [2, 7].
Take this example (after [2] and [7]):
#nexus

ptree new1 weight=0.143 (1,((6,(7,(8,9))),(10,(4,(3,(2,5))))));
range new1 1:a, 2:b, 3:c, 4:d, 5:e, 6:f, 7:g, 8:h, 9:i, 10:g;

ptree new2 weight=0.143 (1,((6,(7,(8,9))),(2,(3,(4,(5,10))))));
range new2 1:a, 2:b, 3:c, 4:d, 5:e, 6:f, 7:g, 8:h, 9:i, 10:g;

ptree new3 weight=0.143 (1,((6,(7,(8,9))),(2,(3,(5,(4,10))))));
range new3 1:a, 2:b, 3:c, 4:d, 5:e, 6:f, 7:g, 8:h, 9:i, 10:g;

ptree new4 weight=0.143 (1,((6,(7,(8,9))),(2,(3,(10,(4,5))))));
range new4 1:a, 2:b, 3:c, 4:d, 5:e, 6:f, 7:g, 8:h, 9:i, 10:g;

ptree new5 weight=0.143 (1,((6,(7,(8,9))),(2,((3,10),(4,5)))));
range new5 1:a, 2:b, 3:c, 4:d, 5:e, 6:f, 7:g, 8:h, 9:i, 10:g;

ptree new6 weight=0.143 (1,((6,(7,(8,9))),(2,(10,(3,(4,5))))));
range new6 1:a, 2:b, 3:c, 4:d, 5:e, 6:f, 7:g, 8:h, 9:i, 10:g;

ptree new7 weight=0.143 (1,((6,(7,(8,9))),((2,10),(3,(4,5)))));
range new7 1:a, 2:b, 3:c, 4:d, 5:e, 6:f, 7:g, 8:h, 9:i, 10:g;

ptree indie1 (1,((6,(7,(8,9))),(4,(3,(2,5)))));
range indie1 1:a, 2:b, 3:c, 4:d, 5:e, 6:f, 7:g, 8:h, 9:i;

ptree indie2 (1,((6,(7,(8,9))),(2,(3,(4,5)))));
range indie2 1:a, 2:b, 3:c, 4:d, 5:e, 6:f, 7:g, 8:h, 9:i;

htree host1 (a,((f,(g,(h,i))),(d,(c,(b,e)))));
htree host2 (a,((f,(g,(h,i))),(b,(c,(d,e)))));
The ambiguity is caused by the taxon '10' of data set 'new' that jumps to several positions among the tree. '10' has not influence on the selected tree because it is a product of a dispersal in all topologies. '10' is inestable in all topologies that include (4,5), then the majority rule gives more weight to that topology than to alternative topology, in which '10' position is not ambiguous. In this case both 'tree islands' have the same evidential weight (by the way, that is the reason to prefer strict consensus over other consensus!). But when weights are applied the topology showing (4,5) are preferred as there is more topologies with that clade, then the first tree is preferred because they lack of resolution!

At first look it seems that this case can be solved weighting the whole islands instead of each tree, but within each island it is possible to have the same problems of the first example, and in more complex cases, identifying 'topology' islands became difficult and maybe impossible if there are several combinations in independent clades!

Solutions?

Of course the best solution for the problem of multiple trees in TreeFitter without using weights is a new version that dealt with polytomic trees. I guess that the resistance against polytomic trees is because they 'imply' simultaneous speciation. I do not hold that kind of idea ;), and I have no reason to think that polytomic trees supports such interpretation. Even if that is the interpretation is better than weighting (by the way, if you think that polytomic trees implies multiple speciation, the weighting implies fractional speciation! I think that it is a more problematic idea than 'multiple' speciation!).

But before a new version of TreeFitter--or a similar program--arrives it is necessary to found a solution to the problem of multiple trees. I am not happy with the solution that I propose here, but I have no other idea, so here I go...

Use an Adams consensus to detect the terminal/clades that produce the multiple trees, and remove it form the analysis, so you keep the stable part of the topology. I do not like removal of evidence, but it seems safer than relying in the biased solution of tree weights. Maybe some want to re-run the analysis, but I think that is preferable to use the reduced tree as it is based directly on the whole evidence, then, the effect of data removal, I hope, is minor, as the stable part of the original topology is conserved. Also, TNT [11, 12] has several tools to identify moving taxons, so an analysis of the trees with TNT, provides several ways to found stable topologies.

A second problem is that in TreeFitter, the extinctions had a cost greater than 0 [6], so removing terminals could increase the extinction value, but I think that this is a minor problem compared with given weight to ambiguous data. Actually we can think that the cost increase by the new 'extinctions' is the penalty for the ambiguity of the data.

Weighting trees in other methods

As far as I know there are other phylogenetic methods/programs that weight trees, and suffer from the same flaws as the tree weighting under TreeFitter.

First, is the majority rule consensus. It seems that the main reason to prefer majority rule consensus is because they provide results with more resolution. But as examples shows [2, 7] the resolution created by a majority rule tree is coupled ore with the ambiguity generated by a particular topology skeleton. Maybe a more interesting solution could be the use of a minority rule consensus (note that supported clades, always appear as they minority rule is 100%), an advantage is that at least they knowledge that the number of clade instances are not related with the 'support' of the clade. A comparison between the majority and minority rule consensus can show the parts of the tree that are somewhat unstable. But I think that this kind of analysis is better performed using a combination of an strict consensus and an Adams consensus [8], or several of the tools from TNT [11, 12].

Under Bayesian analysis, the frequency of clades is recognized as a 'posterior probability' (a more catholic interpretation might be clade support). Bayesian analysis differs from typical consensus because they made a consensus from trees with different optimality value. But all explored topologies are taken as they are found, and branches are never collapsed, so they are subject of the problems of majority rule consensus [2, 7]. Then in cases where a particular terminal/clade is producing ambiguity, the final topology favors the ambiguous topology. This can produce some illogical results when the data sets even with a single optimal tree, are not very decisive [9], with several near-optimal fit trees. In that case, is is possible that the method prefer the ambiguous topologies from the sub-optimal trees, over the topology in the optimal one, even with high probability values! I recommend you to read [2] for a full criticism of bayesian analysis.

There is also other form of majority rule consensus is used: for support measuring using resampling (like jacknife or bootstrap). In this case the use of majority rule reflects the amount of support for each clade. First, from each resampled matrix analyzed a strict consensus tree is build, then the final majority rule consensus shows the amount of times in which a supported clade appears. In this case there is no bias against or for a particular clade, because the trees from resampled matrix are collapsed. This is not the case for PAUP [2, 10], because in PAUP the trees are weighted in each resampled search, then, the majority rule consensus is a majority rule consensus of several individual, and un-collapsed trees, then it is fully prone to the ambiguity problems of majority rule consensus.

[1] Ronquist, F. 2001. TreeFitter, program and documentation. Available at: http://www.ebc.uu.se/systzoo/research/treefitter/treefitter.html
[2] Goloboff, P.A., Pol, D. 2005. Parsimony and Bayesian phylogenetics. In: Albert, V.A. Ed. Parsimony, phylogeny, and genomics. Oxford univ., Oxford, pp. 148-159.
[3] Page, R. D. M. 1993. Component 2.0, program and documentation. Available at: http://taxonomy.zoology.gla.ac.uk/rod/cpw.html
[4] Page, R. D. M. 1994. TreeMap 1.0, program and documentation. Available at: http://taxonomy.zoology.gla.ac.uk/rod/treemap.html
[5] Ronquist, F. 1996. DiVa, program and documentation. Available at: http://www.ebc.uu.se/systzoo/research/diva/diva.html
[6] Ronquist, F. 2003. Parsimony analysis of coevolving species associations. In: Page, R.D.M. Ed. Tangled trees. Chicago Univ., Chicago, pp. 22-64.
[7] Sharkey, M.J., Leathers, J.W. 2001. Majority does not rule: the trouble with majority-rule consensus trees. Cladistics 17: 282-284. doi: 10.1006/clad.2001.0174
[8] Kearney, M. 2002. Fragmentary taxa, missing data, and ambiguity: mistaken assumptions and conclusions. Systematic biology 51: 369-381. doi: 10.1080/10635150252899824
[9] Goloboff, P.A. 1991. Homoplasy and the choice among cladograms. Cladistics 7: 215-232. doi: 10.1111/j.1096-0031.1991.tb00035.x
[10] Swoford, D. 1998. PAUP, program and documentation, Sinauer, Sunderland (USA).
[11] Goloboff, P.A., Farris, J.S., Nixon, K.C. 2008. TNT, program and documentation. Available at: http://www.zmuc.dk/public/phylogeny/TNT/
[12] Goloboff, P.A., Farris, J.S., Nixon, K.C. 2008. TNT, a free program for phylogenetic analysis. Cladistics, in press. doi: 10.1111/j.1096-0031.2008.00217.x

viernes, abril 18, 2008

Vouchers, types and specimens

Prompted by the closure of Utrech Herbarium, Chris Taylor write two interesting posts about the nature of type specimens and vouchers (of molecular studies). In both cases Chris remarks about the importance of a comparison specimen to resolve some taxonomical problems.

In a more implicit way, the post about vouchers remarks how molecular tools can be very important, but in a some way or another, to made a proper 'molecular taxonomy' you need to rely on a proper morphological (classic) taxonomy.

I a post that I made some time ago, Chris point me some of that remarks, and actually I think that my disgust with type specimens is not the types, but the bad practice around it, specifically, that many specialist from old days (and maybe some actual ones), propose hundreds of new species based on telegraphic descriptions.

The other thing about type specimens that I do not like, is that it seems that there is an 'single specimen taxonomy', I thing that every specimen in a collection is equally valuable. For me, most important than the type speciemen information is the 'examined specimens' list, that usually include individuals of different sexes, and ontogenetic states.

But I think that new generation of taxonomists are moved into the right direction. First there are new approaches intended to store and provide access to information on an specimen basis, I specially like [1], even if the data are not made public (I prefer public data, but I understand that a taxonomist want to keep his/her data with him after a long work of several years, for at least the same amount of time!), it allows a quick reexamination of material.

The second point, but sadly it is not very popular in third world countries (and even in first world ones), is that every, I repeat every taxonomic contribution would be made under a rigurous phylogenetic framework. That is, character discussion, published data matrix, and phylogenetic tree-based classification.

Character discussions allows a more objective definition of the examined characters, as inside-study coherent terminology, because phylogenetic characters would be the same character across several species.

Data matrix, shows in a easy readable form (specially if you have a phylogenetic data editor, there are several free on the net) several characters examined for a particular terminal (that is a set of examined specimens), which shrink the usually lengthly (and bored to read) description section of the paper. That part can be reserved to particular characters that are not used under the cladistic analysis (for example, colors, measurements, proportions), or particular character scorings (explaining some particular scoring), biological information (such distribution, ecological aspects), links to figures/pictures (electronic or in print) and the list examined specimens. When a character is scored, the author of the matrix is saying that he/she view that character in the species, it also includes a list of non-seen characters (usually typed as '?'). Note that the matrix is an excellent way to fuse the information stored with the several specimens examined, so linking data from the specimens and from the matrix is direct [1].

Finally a cladogram-based classification, allows to maintain the information from the analysis, tightly binded with the taxonomy. If someone proposes a new genus, it will show that the difference with other ones is a really different group, and not a highly appomorphic group inside a previous established genus. A classification need evidence that support each proposed taxon, and the cladogram is the well know form to found evidence of grouping.

[1] Ramírez, M. J. et al. 2007. Linking of digital images to phylogenetic data matrices using a morphological ontology. Systematic Biology 56: 283-294. doi: 10.1080/10635150701313848

miércoles, abril 16, 2008

We can't get characters, but we can get states

Another piece for the seminaries, this time, about phylogenetics

Ramírez, M. J. 2007. Homology as a parsimony problem: a dynamic homology approach for morphological data. Claditics 23: 588-612. DOI: 10.1111/j.1096-0031.2007.00162.x

I read it few time after it was posted early on line, and I don't want to talk about it, but as it was proposed for the seminar, I put my own view about the paper.

Homology for some morphological structures is, sometimes, straightforward within a group, but, as we move to more inclusive scopes, the interpretation becomes blurred. For example, we know well that the legs from insects are all the same legs, also we know that the joint-legs are homolog within all arthropoda, but which is the equivalent for the pair-2 of insect legs in myriapoda? In vertebrates, the homology of cranial bones is nearly direct in each 'class', but comparison of cranial bones in fishes (specially the fossil ones) with the cranial bones is fairly complicated.

So Matín [Ramírez] give us two-step ways to deal with such cases. The first step, is a formalization of the classic way to deal with characters, a comparison with the possibles states, and its implications, but he puts under lights that the whole decision would be made in a context that evaluates several possible alternatives, and set an specific cost to each one, as a way to chose among the possible alternatives, the most parsimonious one is preferred. In this vein, their work is very similar to Agnarsson and Coddington [1], and in my opinion more easy to grasp.

But in [1] you make the chose and then, go to the standard cladistic analysis. Martín does not make the decision, he wants that the simultaneous analysis, selects the best possible arrangements, in a framework directly derived from molecular 'dynamic homology' [2, 3]. Under an strict dynamic framework each topology would indicate an specific arrangement for the morphology, but as Martín notes, in a direct difference among DNA, not all arrangement can be valid. Then he limits their scope to a set of previously defined morphological 'alignments' and choose the most parsimonious one.

Although Martín description of the problem is more adequate than [1], Agnasson and Coddigton are far better in leaving homology decisions and parsimony analysis separated. When choosing homologous characters, the main objective is to found characters that are the same, you can use several tools of the morphological analysis to do it. If there are some doubts, then it seems better to leave potential unions separated, or fused but with a lesser weight than the other, well established characters [4]. You can use a particular weighting schema to found the homologs, but it is not necessary to use the same in the construction of the cladogram.

As is seen in every character discussion, you can have a plenty of reasons to decide about a character (sometimes, such discussion includes what happens with alternative codings), but claiming that the choose was made because it fits with the best cladogram found... it seems not to be a good reason.

And it is not a good reason! Why? Because a character claim based solely on the cladogram, is just like homoplasy, you can only spoke about it because of the cladogram, then it is an ad hoc hypothesis [5]. 'Dynamic homology' in the molecular sense, or in the morphological one proposed by Ramírez are both ad hoc. It is not a coincidence that Martín found that under his method, the justification of parsimony of minimization of ad hoc hypothesis is not easily followed, and then, methods based directly on homoplasy, like implied weights [6] produce estrange results.

I think that the paper have a great value for its first part, and can be integrated with the proposal of [1]. But as most of the justifications of 'dynamic homology', Martín trades a fully coherent minimization of ad hoc hypothesis of homoplasy [5] with 'minimization of steps' .

[1] Argarsson, I., Coddington, J.A. 2007. Quantitative tests of primary homology. Cladistics 24: 51-61, DOI: 10.1111/j.1096-0031.2007.00168.x
[2] Wheeler, W.C. 1996. Optimization alignment: the end of multiple sequence alignment in phylogenetics? Cladistics 12: 1-9. DOI: 10.1111/j.1096-0031.1996.tb00189.x
[3] Wheeler, W.C. et al. 2006. Dynamic homology and phylogenetic systematics: an unified approach using POY. AMNH, New York. Freely available: http://research.amnh.org/scicomp/pdfs/wheeler/Wheeler_etal2006b.pdf
[4] Neff, N. 1986. A rational basis for a priori character weighting. Syst. Zool. 35: 110-123. JSTOR link: http://www.jstor.org/pss/2413295
[5] Farris, J.S. 1983. The logical basis pf phylogenetic analysis. In: Advances in Cladistics, vol. 2 (Platnick, N.I., Funk, V.A., Eds.). Columbia, New York vol 2. Pp. 7-36.
[6] Goloboff, P.A. 1993. Estimating character weights during tree search. Cladistics 9: 83-91. DOI: 10.1111/j.1096-0031.1993.tb00209.x

Addendum
Of course I do not deny the role of previous analyses and the checking of different alternative codings. That forms part of the tools from which morphologist made their homology desitions.

lunes, abril 14, 2008

C--

Bueno, el post esta más relacionado con la programación que con la biogeografía... pero si les interesa, ahí puse algunas de mis experiencias recientes con el C++...

lunes, marzo 31, 2008

Dispersion strikes back... but in the wrong direction

Just two weeks before, a seminar about biogeography and phylogenetics starts here, in Tucumán. We were about 8 people taking about a biogeographic paper (the next week, it will be a phylogenetic one). So there are my own impressions about the papar (I posted it late, because I'm out of the town because of the of the holly week break).

Sanmartín, I., van der Mark, P., Ronquist, F. 2008. Inferring dispersal: a Bayesian approach to phylogenetic-based island biogeography, with special reference to the Canary islands. J. biogeografy 35: 428-449. DOI: 10.1111/j.1365-2699.2008.01885.x

Personally I do not like Bayesian methods in phylogenetics, they are based on several flawed principles [1], but I will try to focus in the other aspects of the proposed framework of Sanmartín et al., instead of attacking the Bayesian principles.

As many others, Sanmartín et al., attack 'vicariance' biogeography on the grounds that they only counts vicariance and ignore dispersal, I think that the tale is somewhat different, vicariance biogeographers are fully aware of dispersal, but they can't find grounds to found a general dispersal pattern, in the other hand vicariance provides a fully explicable pattern that is shared by several and unrelated organisms, then dispersal, can only be addressed group-wise. But in the case of the islands without any connection to land, vicariance can not be used as a general explanation. But can dispersal provide one?

Sanmartín et al., argue that the answer is 'yes', but instead of show why such conclusion arises they jump to their own model of dispersal, the causal mechanism that put several different organisms in the same model is never given, then their own asseveration that dispersal can produce 'concerted' (i.e. general) patterns, which is the most interesting question raised by they are never answered. What is striking is that they show several different models of dispersion proposed for canarian taxa.

Moreover the model developed, is a symmetrical one, then if in fact it is a common dispersal route, by an oceanic stream for example, it can be masked by their model that presupposes that both dispersal directions are equally probable.

Then they jump on the model frenzy, they are as embedded on the power of model approaches, that they raise 'new questions', that were irrelevant before their model. The most striking one is the 'carrying capacity' of their model. Carrying capacity is a term borrowed from ecology, and in this case is somewhat equated with island raw richness. This parameter, that seems to be originated from the 'island biogeography' of Wilson, can be of interest to ecologist, but they relevance in the search of common biogeographical patterns is never clearly showed (and I do not think that it has some empirical meaning), but now, this is an important question: most of Sanmartín et al. discussion, are about carrying capacities, not about dispersal models, which taxa are best fitted to the model, dispersal rates for different groups, or common routes of dispersal. Sanmartín et al. transform the parameter calibration into the research answer, losing the important questions in the middle.

When given the results, Sanmartín et al. contradicts many of its initial reasons to choose a likelihood model, the first one is that the likelihood of each model allows a selection of the models, but as the model (and its parameters) with the best likelihood seems to be illogical, they move on a sub-optimal models, they claim that it is not enough data, but when is enough data? How can I selecet a model only guided by its unexpected results? Why no limit the model to certain values if we are afraid of illogical answers? I think that Sanmartín et al. Results actually undermined their claims.

Sadly the paper is more like a discourse from a politician in campaign: all about the promises of wonderful results that might be open for likelihood models, but the actual use of the model with the empirical case is disappointing.

If a dispersal biogeography based on 'concerted' patterns of dispersal is to be used, their user would answer several questions: (1) why expect a 'common ' dispersal pattern? (2) is their model adequate to the desired answer? (3) Is the pattern only spatial (i.e. a common dipsersal route) or spatial and temporal (i.e. a common dispersal route, roughly at the same time)? (4) What about the taxa that departs from the selected model? Questions (1) is never answered by Sanmartín et al., question (2) is a clear no (the symmetrical model contradicts directly their aim), maybe they can give an answer to question (3) but they are more interested in parameter estimation than in biological questions, the question (4) is never answered, even when they accept that there are several different models proposed for different taxa in the Canarias.

[1] Goloboff, P.A., Pol, D. 2005. Parsimony and Bayesian phylogenetics. In: Albert, V.A. Ed. Parsimony, phylogeny, and genomics. Oxford univ., Oxford, pp. 148-159.

viernes, febrero 29, 2008

A new look!

It is really nice! The page of the Willi Hennig Society has a new design, it is far better than the old one :)... I hope, some new features (like the data matrices, additional data, comments for papers, an open manuscrips storage, blogs from leader cladists...) sooner, but the first step is cool!

Another page was launched, but by now I do not see it :P, is the Encyclopedia Of Life (EOF, this is a horrible acronym, I see it as 'End Of File'), I read the review of Rod Page (see also the review of Chris Taylor), then I hope that many of problems showed by Rod will be solved sooner (they have 50 millions of US$ for 5 years!!)

And the site for the XXVII WHS meeting (at Tucumán, my new home town :D!) would be launched sooner, stay tuned! ;)