Home » Day-to-day

Category Archives: Day-to-day

Blog archives

Here we collect our writing on various topics from our day-to-day work and our reading clubs.

Enumerating Molecules – Summary of 2 papers

We read:

Faulon, Jean‐Loup, Donald P. Visco, and Diana Roe. “Enumerating Molecules.” Reviews in Computational Chemistry, Volume 21: 209-286.

and

Meringer, Markus. “Structure enumeration and sampling.” Handbook of chemoinformatics algorithms (2010): 233-267.

——

There are 3 main topics in enumeration molecules:
1) Counting (which produces a number)
2) Enumeration (which produces a list of molecular graphs)
3) Sampling (which produces a random molecular graph)

1) Counting

The most important tool in this area is “Polya’s counting method”. It can be used to count derivatives of benzene, by not double counting molecules which can be turned into each other through a rotation.

In general, you identify the similar components of your molecule which you want to label by something. You then work out the subgroup of the symmetric group that acts on these components. Afterwards, the cycle types give rise to some variables and added together to create a polynomial called Z.
Finally, substituting into Z gives a polynomial C, whose coefficients describe how many different graphs exist with the labels corresponding to the variables in the term.

If the number of labels is substitutes instead of the labels in polynomial form, then one obtains the sum of the coefficients directly.

The reason Polya counting works can be understood, by looking at Burnsides lemma, which states that the number of orbits (e.g number of different molecules) equals the average number of fixed points.

Another application of Polya’s counting method comes from applying it to counting series themselves (meta level warning) – this idea gives a counting series for the number of Alkynes (rooted carbon trees). Many variations of Alkynes with other molecules attached can be counted with the initial result. Ironically, Alkanes, which usually seems simpler than alkynes, is one such example, but it is way more complicated to count them.

Faulon suggests that further progress in this direction might lead to a solution of counting isomers in general, which is not currently possible in a closed form way. The closest is by Wang, Li, Wang, which found a counting series for C_iH_{2i+2}O_j, with some further restrictions, which is far from all molecular formulas, but still quite general.

It is, of course, possible to brute-force the problem by constructing all the molecular graphs, which brings us to the second topic.

2) Enumeration

When it comes to enumeration, the “equivalent of Polya counting” in this area is orderly enumeration. It basically consists of having an ordering on the graphs, which allows for the notion of canonical. The best software seems to be McKay’s nauty for enumerating graphs.

The idea is the following:

a) Nodes have an order
b) This induces a lexicographical order on the edges
c) This induces a partial order on the graphs, by letting A be smaller than B if B contains A or B equals A up to a point and then has a larger edge.

If one is interested in particular graphs, rather than all graphs on n nodes:
If the criteria are “consistent” (meaning graphs fail if their subgraphs fail), then it can be incorporated into the algorithm in a natural way (since both the generation and the criteria are “bottom-up”)

An interesting comment on why Goldberg’s theoretical result on enumeration, that runs in polynomial time per outputs cannot be directly implemented (An assumption is made, that the number of (n,q)-graphs is not necessarily greater than the number of (n,q-1)-graphs).

3) Sampling

Dixon and Wilf have a cool and simple algorithm. The main idea is this:
a) Pick a random permutation in S_n, where n is the number of atoms.
b) Then let the permutation act on the edges (a,b) by acting on the nodes a,b individually – compute the cycles of this edge-permutation.
c) For each cycle, let all the edges exist or none of them.
This produces a random graph.

 

Several expansions have been made, such as Goldberg and Jerrums algorithm, which shows that it is theoretically possible to sample molecules in polynomial time. This is peculiar since both the enumeration and enumeration computational complexities are open problems.

Simulated annealing sampling and a “genetic” algorithm are also mentioned.

According to Faulon, the sampling problem lack really strong tools which compare to Polya counting or ordered enumeration.

 

Our thoughts:
These 2 reviews are very similar and if you only read one, then we would recommend the first.

These predate the work of Reymond and the GDB-17 databases of all small molecules organic molecules with 17 non-hydrogen atoms or fewer.

One thing, that is not mentioned in the papers is chemical filters – it seems to this reader, that molecular graphs, such as 4 oxygen-atoms all bound together (O1OOO1) satisfies the mathematical rules, but not the chemical ones. Another example of unreasonable molecular graphs can be found in the creation of Reymond’s GDB-17 databases there were a series of filters applied, which came from chemical considerations of reasonability and not any theory mentioned in this review.

If this example points to a deeper problem, then all the enumeration and counting are merely supersets and upper bounds to the molecules, which would explain why mathematicians are often more interested in these problems than chemists.

Overall, these papers are worth reading.

Four Topics in Computational Biology

I will be giving a course with these lecture in TH18 at a advanced undergraduate course at the Department of Statistics

1 Enumeration in Phylogenetics
2. Tree Generating Processes
3. Compatibility
4. Statistical Alignment

5 Physics of Molecules: QM and MM
6 Integrators and Approximations
7 Applications I: Reactions
8 Applications II: Protein Folding

9 Small Molecules
10 Polya Enumeration
11 Graph Grammars and Reaction Prediction
12 3D Prediction from Graphs

13 Modeling the Evolution of Complex Objects: Languages, Patterns, Movements
14 The Comparative Method
15 Example I: Proteins
16 Example II: Networks

They will appear on this page as I finish them:

https://heingroupoxford.com/learning-resources/lectures/

Skype Book Discussion Group in “Computational Complexity of Sampling”

The present version can be found here:

Click to access ComputationalComplexityOfCountingAndSampling.pdf

The author – Istvan Miklos – believes he will always be ahead of the readers in writing. We would then write a review that would be published about the same time as the book was published and we put an extended report on this page:

https://heingroupoxford.com/learning-resources/lectures/

We also give a summarizing lecture when we have finished the book. Earlier when we did this, we met every 2nd day doing about 20 pages each time, but it can depend on the individual book. We did a similar thing to Mike Steels 2016-book, which I believe was beneficial to both authors and readers.

The ideal number of participants in such a group is 3-5. It would have to be online since I will be Israel. I like to choose a time that is either starting or ending of working day so it interpheres minimally with work. If you know somebody interested in participating in this, please tell me. If it proves a crappy book, we will stop reading, but that is not what I expect.

What did we learn at: Origins of Life Conference – ISSOL17

What did we learn at: Origins of Life Conference – ISSOL17

  • written by Jotun Hein

Overall attending the conference was a very useful since I haven’t been to an Origins Conference for more than 5 years and since I have stopped teaching Origins, in general, I don’t read so much on the chemical nitty-gritty.

The was much interesting material at the conference and of course, I met some people from Oxford, that I had never seen before working on catalysis.
The first day [Monday] was mainly devoted to Exoplanets and Meteorites/Comets/Transport of Organic Matter.
The second day [Tuesday] was the physical condition on earth 4 Billion or so years ago.
The third 1/2 day [Wednesday] was dedicated to the first chemical steps towards life.
The last 2 days were on the early evolution of life and more theoretical models.

Origins of Life studies are clearly getting a lot more attention/funding now. Computational studies play a much larger role. There are much more serious attempts at synthesizing life de Novo. But I can’t say there is a single convincing scenario for planet Earth. Exoplanets clearly are very exciting, but there is no way to study the architecture of life so far away [barring SETI – that was unrepresented at ISSOL] so all one can hope for a couple of centuries is observation of convincing bio-signatures.

There seemed to have been a lot of organizational problems. I didn’t know where to go and sleep and ended up sitting all night in the airport (while paying for a room at UCSD). Another person I met had experienced something else. The conference dinner was not very different from the free dinner and there were no arrangements of where to go. Anybody going to conferences/workshops knows that many connections are made at the evening socializing.

I, William Kurdahl and possibly some from the Oxford Catalysis will give an informal orientation about the meeting Tuesday, August 29th 3 PM in the small lecture room in The Department of Statistics, Oxford.
William and I both chose 5 papers/presentations that we liked.

These are the slides in progress:
https://www.dropbox.com/s/p5tmy3a1g8i2kd0/ISSOL.pptx?dl=0

Talk by BLAST INVENTOR

Speaker: Stephen Altschul

Screenshot 2017-05-17 10.51.14Title: Dirichlet Mixtures, the Dirichlet Process, and the Topography of Amino Acid Multinomial Space

Venue: Tuesday May 23rd 3.30 PM  Department of Statistics, Lecture Theatre (Lower Ground)

Abstract:   The Dirichlet Process is used to estimate probability distributionsthat are mixtures of an unknown and unbounded number of components.Amino acid frequencies at homologous positions within related proteins have been fruitfully modeled by Dirichlet mixtures, and we have used the Dirichlet Process to construct such distributions.  The resulting mixtures describe multiple alignment data substantially better than do those previously derived.  They consist of over 500 components, in contrast to fewer than 40 previously, and provide a novel perspective on protein structure.  Individual protein positions should be seen not as falling into one of several categories, but rather as arrayed near probability ridges winding through amino-acid multinomial space.

The slides will be made available after the talk.

Comment: Stephen Altschul has finally proven that I can’t add 2 and 2. I have attended Altschul Dinners at my College [University College, Oxford] and never thought of connecting the two words Altschul and Altschul despite their obvious similarity. It is in honour of Stephen’s grandmother, whose brother was Arthur Lehman Goodhart and Master of UNIV 1951–63.