User talk:Benjamin Leibowicz

From OpenWetWare

Jump to: navigation, search

Biophysics 101: 12/8/09

In class today we made a presentation as the modeling group, demonstrating the ability of the scripts we've created to take in data, run a regression, and output a model of gene interactions for a specific trait that can be uploaded into Trait-o-Matic and run on the genomes in the database. In our discussion we determined that the most useful tool we have given Trait-o-Matic is the feature for uploading models - whether these are models created from data by our regression scheme or models that people find in the literature and upload. Ultimately, it will be very cool to develop a database of models for traits people have uploaded in Trait-o-Matic, so that when an individual views his or her output, in addition to the outputs for single-gene effects already there, they can be directed to models that apply to their output. So, if an individual sees he or she has several genes related to diabetes risk, the uploaded models on diabetes will appear. The user can run the model on their genome and get a sense of his or her overall risk, as well as learn about the source of the model being used. If this can all be interfaced into Trait-o-Matic and displayed in an automated, user-friendly format, I think we will have added a significant and useful feature to the framework.

Biophysics 101: 12/7/09

Today Zach, Alex L., Daniel, and I worked for a long time to coordinate and code our model for the expression of binary traits. The nonlinear logistic regression model we had originally planned to work with proved too complex to be useful. With its high number of parameters, any data set large enough to produce a relatively accurate model caused the computer to run out of memory. So instead of we have turned to a linear regression of the logit of probability.

While I had coded a generalized multiple-gene interaction model in MATLAB, Zach went ahead and did this effectively in Python. Since Trait-o-Matic operates in Python, this seemed like the best choice, so we spent a good deal of time improving on Zach's preliminary regression code - sorting out errors like divide by 0, identifying and handling peculiar cases where the code experiences problems, and streamlining the scripts (mostly thanks to Daniel, who is very knowledgeable in Python coding). Then, once we had the regression functioning, we worked to interface our model with Trait-o-Matic.

The basic idea is this. Using some data set of individuals' genotypes for specific locations related to a trait and those individuals' phenotype for that trait, the regression determines a model that calculates the probability of each phenotype given a particular genotype. This model is then passed to Trait-o-Matic with a list of the SNPs that are involved. For the genomes in its database, Trait-o-Matic inputs those individuals' genotypes to the model it received to determine the probabilities that the individuals in the database have each possible phenotype of the trait. In the simple example of a binary trait like a disease, Trait-o-Matic would use the model to calculate the probability that each of its individuals will suffer from the disease.

This evening I coded the piece of logregoutput that turns the model created by the regression into a .py file that can be uploaded to Trait-o-Matic. This file is ready-to-go: it can receive a binary genotype from Trait-o-Matic and calculate the probability for that individual.





Biophysics 101: 11/17/09

Zach and I have worked on writing scripts to model the interaction between two genes. Zach coded in Mathematica and I coded in MATLAB. I have described my work and some results on the class Project Page. The model that we created for continuous traits can be found on Zach's Page.

Biophysics 101: 10/29/09

I would like to work on the problem of inheritance of polygenic genetic disorders. Specifically I am interested in the development of a mathematical model to convert information about genes involved in inheritance of such a disorder into a simple, understandable output reflecting the expression of the disorder. One such disease that interests me is Lupus, which is believed to have a polygenic genetic component. I would be happy to program a lot for the project and am interested in learning more about the more quantitative aspects of genetics.

Biophysics 101: Assignment 10/13/09

Of the several Human 2.0 project ideas that have been circulating so far, I think the one with the most potential is the SNPCupid proposal. While some of the other proposals are interesting, I think that many of them are too narrow in focus to be consistent with the Human 2.0 objective. For example, Fil's idea involving enhanced genetic information used to infer more accurate drug dosages is very cool, a well-defined problem, and probably doable given the resources we have, but I'm not sure such a specific project would be in line with Human 2.0.

I think the explanations of what SNPCupid could possibly entail given on the Project Page, Joe's Talk Page, and in my writing on the last assignment are pretty sufficient in this point in terms of how they define the problem and how much detail they provide. So here I will use this opportunity to come up with some questions/concerns that should help guide the evolution of this project proposal:

1) Ideally, what practical purpose will SNPCupid serve?

At first this seems pretty obvious, but I think there is some ambiguity here. Say that SNPCupid is used as a dating service for people to find partners with whom their children would have very strong likelihoods of being healthy without any significant genetic disorders. I suppose in this sense SNPCupid could be a very effective tool in decreasing the number of children born with diseases like Tay Sachs or Cystic Fibrosis simply by allowing people to choose partners with whom their children have no chance of inheriting the disease. But if used this way SNPCupid would definitely raise ethical issues. Is this really how people should choose their lifelong partner? Would the existence of such a tool imply that there is something fundamentally objectionable about living people with genetic disorders? If SNPCupid were instead available to couples that had already committed to one another, the advantages would be less striking. Say that a married couple finds out their child would have a very high probability of inheriting a given disorder. What might this accomplish? I suppose if the disorder were very bad they might choose not to have a child together. They might adopt. They might divorce. They might seek a sperm donor who would be likely to produce a healthier child. This last possibility is important to consider, because allowing couples to see the possible imperfections in their children before conceiving them might lead many women to desire in vitro fertilization where they can essentially choose traits.

2) What will we define as the limits of SNPCupid?

The most basic form of SNPCupid would probably only cover relatively common genetic disorders traceable to known mutations or single genes. An expansion of this would be to include polygenic traits that are related to a broad set of genes. Another question would be where to draw the line regarding what is a disorder or disease worth reporting on. While nearly all would agree that genes related to cancer or Sickle Cell Anemia are important to provide information on, what about things that span the border between health and other categories, like male baldness or obesity? It might be a slippery slope before this becomes a very eugenic tool, allowing people to seek mates with whom their children will be the most attractive, most intelligent, and most athletic.

  • I did some internet browsing on the topic of genetic profiles in dating and relationships and found a website called ScientificMatch. It seems like a much less scientific version of what is proposed as SNPCupid, essentially operating under the very general assumption that partners who have very different genetics will likely have a better relationship as well as have healthier children.

Biophysics 101: Assignment 10/8/09

My latest thoughts on a possible direction for the Human 2.0 project combine the ideas I described in my last assignment with the idea of a genetically oriented dating program proposed by Anna in our last class meeting. Although it seems very eugenic, I truly do think that there would be some market for such a dating service in the present or very near future. For example, if two individuals who view themselves as ready to get married if they find the right person discover that their offspring would have a very high probability of inheriting a serious genetic disorder, they would probably be less likely to begin or continue a relationship, or to get married. Whether one thinks this program should also provide information about the probabilities of traits like athleticism and good looks in offspring is an ethical debate, but it would be easy to start off just providing information on the probabilities of genetic disorders. It would be possible to write computer scripts to take both individuals' genomes (or parts of them) as inputs, determine the probabilities of different combinations of genes in the offspring, run these combinations against databases of disorders like OMIM, and output the probabilities that the offspring inherits different disorders. If the algorithm were fast enough, at least for the most common genetic disorders, it would be possible to take all the members of this dating website, store all of their genomes or parts of them, and display the probabilities of disorders in offspring automatically when a user clicks on the name of another user. If this task proves too large and cumbersome, we could narrow the focus by only providing information on the most common genetic disorders and those that tend to affect specific ethnic groups (which often have their own dedicated dating websites).

This is a very cool idea, but in this form the only problem I see is that it would likely become obsolete very quickly. It would manipulate evolution through a thorough understanding of it, but would become obsolete once the rapidly improving technologies I mentioned in my last assignment become available and reliable, allowing us to change the mode of human evolution from natural selection to deliberate selection. These technologies include creating sperm and egg cells from arbitrary body cells, homologous recombination, and the use of artificial chromosomes. The net effect of these technologies would be to give our species the ability to alter genomes between generations so that an offspring can inherit genes and traits different from those that would naturally be passed on by the parents. They would allow an offspring who would naturally inherit a genetic disorder to instead have the responsible gene replaced by a healthier variant.

I still believe the genetic dating program is both a great thought exercise and a potentially useful tool, but it should go further in providing details about available interventions that could prevent the offspring from inheriting genetic disorders that he or she naturally would inherit. For example, say that in the near future it becomes possible to correct an SNP that increases an individual's chance of developing a disease. Then in addition to determining that the offspring of two individuals would likely inherit this SNP using SNPedia, the program could point the users toward information on the intervention such as what it entails, where it can be performed, and its details like cost, similar to the Genetests database.

I think the genetic dating program is a great jumping-off point but that it needs to reflect more of Human 2.0 than simply manipulating evolution through selecting partners. Any thoughts?

Biophysics 101: Assignment 4

To me, Human 2.0 implies that the human race is sufficiently capable of understanding and modifying its genome so as to take control of its own evolution. The history of life on Earth can be characterized by evolution driven by natural selection. This process has been very slow, and imperfect for several reasons. As we discussed in class, the significant lag inherent in natural selection evolutionary processes has not optimized us for our current world, as many of our features evolved to enable our survival in a very different environment that was present earlier in our history. For example, the fight-or-flight adrenal response to stress helped earlier humans fend off violent attacks or defeat prey in a struggle, but is often detrimental to us in contemporary situations like a workplace or academic environment where calmness and composure are positive qualities. Now in the 21st century, our ability to manipulate our environment and disrupt natural processes seems to be altering the course of natural selection evolution. While it is great that modern medicine can keep people alive who would have passed away in earlier eras, it can also enable these people to reproduce and pass on certain undesirable genes. As our medical capabilities improve, this effect can be expected to increase. Even simple manipulations of natural processes like birth control and contraception have had enormous impacts, as people who live in the most sophisticated and advanced societies tend to have fewer offspring than those in less sophisticated and advanced societies, seemingly a reversal of natural selection.

One goal of a species we all agreed upon in class was that a species should avoid extinction. In light of this goal, is human evolution heading in a desirable direction? There are many people who feel that natural selection processes have been sufficiently disturbed to provide a pessimistic future of human evolution, and would like to employ genetic intervention technology to change the course of evolution. Even for those with a more optimistic view, it is reasonable to acknowledge that human survival is remarkably fragile in the face of possible epidemics and other disasters, and that if intervention in evolution could help our species avoid extinction, then it would be a wise maneuver. Therefore, Human 2.0 could mean changing the operating force behind evolution from natural selection to deliberate selection.

Developing and improving technologies like creating sperm and egg cells from arbitrary body cells, homologous recombination, and the use of artificial chromosomes might make it possible in the near future to choose what genes get passed on from parents to a child. The important thing about these technologies is that parental genes can be replaced by foreign genes, so even if the parents' genes cannot result in a certain gene for the child, the child can be given this gene. This could allow for deliberate selection by, for example, allowing parents with a certain genetic disorder who would normally produce an offspring also possessing the disorder to instead produce an offspring with no sign of the disorder in either genotype or phenotype. In the offspring the disorder gene has been replaced by a healthy gene and the disorder genes are not passed on. The scope of deliberate selection is obviously a significant ethical issue. While it is generally acknowledged that ridding the human population of a threatening disorder is a good idea, what about more complicated deliberate selections like evolving the human species to be extremely athletic or extremely attractive? Should deliberate selections be determined on an individual basis or by some organizing authority like a government? Besides the ethical debate, does this pose any dangers in terms of moving the human race toward a monoculture of very similar organisms?

Of course a project based on this idea would make use of databases of correspondences between traits (like disorders) and genes. It would also make significant use of population genetics and statistics, maybe in performing some sort of simulation of how this type of deliberate selection evolution would occur.

While this idea was arrived at independently, in preparing for this weeks assignment I had a fruitful conversation with Zach Frankel and Alex Lupsasca.

I was particularly inspired by this article from Discover Magazine: Evolution by Intelligent Design

Biophysics 101: Assignment 3

Python Code


Biophysics 101: Assignment 1

Our first assignment was to practice using spreadsheet software (Microsoft Excel) and the programming language Python by examining the exponential and logistic functions. First I used Excel to plot both functions using recursive relations where each value of the function is calculated from the previous one. The exponential function is given by the recursive relation xn = k * xn − 1 and the logistic function is given by the recursive relation xn = k * xn − 1 * (1 − xn − 1). Another function examined was a modified logistic expression xn = MAX(k * xn − 1 * (1 − xn − 1),0). All of these functions were plotted recursively for a list of k values including 0.9, 1.01, 1.1, 1.5, 3, 3.67859, 4, and 4.03. The results are shown below:

Image:ExponentialExcel.jpg Image:LogisticExcel.jpg Image:LogisticMaxExcel.jpg

The exponential functions look as expected, with the higher k values resulting in growth curves that grow faster than for lower k values. The recursive representation of the logistic function does well in approximating the continuous form of the function for low k values. Once k reaches 3 the periodic behavior of this recursive relation becomes very noticeable, and for still higher k values the function takes off in the negative direction and must be restrained by the MAX condition.

Once I successfully installed Python and got it working, plotting the continuous forms of the exponential and logistic functions for different k values was fairly straightforward. The continuous form of the exponential function is y = ekx and the continuous form of the logistic function for a starting value of x0 = 0.5 when t = 0 is y = 1 / (1 + ekt). The plots for a k value of 1.5 are shown below:

Image:Exponential.png Image:Logistic.png

When experimenting with different k values, the exponential function again grows faster as k increases. As k increases the logistic function settles to its final value of 1 in less and less time.

Basic Wiki Instructions

  • Don't be afraid to edit! As with all pages on the wiki, all versions are saved so its easy to undo. If you have any questions feel free to send us an email.
  1. Start off by clicking the 'edit' button to the right of this section, or at the top of the page.
  2. Now you should see the text of this section as text within an editor box. There are several buttons in the editor box, but don't worry about those for now. Just type something in the box, scroll down to the bottom, and hit the 'Preview' button.
  3. You should see the web-page and text box views, but now with your edits! Don't forget to save your changes by clicking 'Save Page'!
  4. Editing pages is as easy as that. There are of course many ways to format your text. The easiest way to learn is to find an OWW page with the formatting you like, click on the edit button again, and see for yourself how it was created in the text box. Here's an extensive list of formating examples. Or look at this OpenWetWare introductory tutorial.
  5. When you are done, remove these instructions by clicking the edit button for this section again, erase everything you see in the text box and click 'Save Page'. (And remember you can always retrieve these by clicking on the 'history' tab at the top of this page.)

Note that these instructions apply to any page on OWW. Feel free to contribute to OWW by editing pages to add content, update them, or even correct mistakes. OWW relies on an active community to manage our growing resource of open access information, and we need your help!

Personal/Lab Info

We have gone ahead and filled in some information you provided us in your membership application on your User Page. Please take a moment to embellish this and tell the community a little more about you. Put links to your lab pages, your projects and your interests. If you run out of ideas, take a look at some of the other User pages. For example, check out User:Julius_B._Lucks, User:Jason_R._Kelly and User:Reshma_P._Shetty.

You'll also notice that we have put an 'image' placeholder at the top of your User Page. We encourage you to upload an image of yourself to give OWW a more personal feel. To upload an image, click on the Upload file link on the left-hand side (toolbar). Choose a file from your computer, and remember the file name. After you have uploaded the image, you should see it loaded on its own page. Go back to your User Page, click on edit, and replace 'OWWEmblem.png' with the name of your file that you have uploaded in the second line of this page.

Personal tools