{"id":1332,"date":"2009-06-25T21:52:28","date_gmt":"2009-06-25T16:22:28","guid":{"rendered":"http:\/\/paraschopra.com\/blog\/?p=406"},"modified":"2009-06-25T21:52:28","modified_gmt":"2009-06-25T16:22:28","slug":"digital-evolution-basics","status":"publish","type":"post","link":"https:\/\/invertedpassion.com\/digital-evolution-basics\/","title":{"rendered":"Digital Evolution Basics"},"content":{"rendered":"<p>For those who are not aware of digital evolution, I am writing a quick short summary. Digital evolution means evolution of computer programs who compete for limited resources such as CPU and memory. In short, it goes something like this:<\/p>\n<p>&#8211; You define a universe, which is virtual memory (space) and CPU (time)<br \/>\n&#8211; You create energy (CPU cycles)<br \/>\n&#8211; You define an extremely limited instruction set for Virtual Machine (Physics). Instruction set being limited is important because you want to mimic physics, not chemistry or biology<br \/>\n&#8211; You seed randomly generated programs of varying length<br \/>\n&#8211; You start parallel execution the random programs<br \/>\n&#8211; Each instruction eats up energy and at random times you feed energy into universe<br \/>\n&#8211; At random times mis-execute program instructions<br \/>\n&#8211; Run it for a long time and Voila! finally self replication gets evolved from very simple instructions<br \/>\n&#8211; Then arms race gets started between programs and things get interesting<\/p>\n<p>Some people argue that digital evolution is not merely an emulation of real thing but is indeed a real manifestation of evolution and I tend to believe the same.<\/p>\n<p>To download the digital evolution simulator written by me in Python (called PyPond), head to: Download: <a href=\"http:\/\/paraschopra.com\/projects\/pypond\/PyPond_without_graphics.py\">Normal version<\/a> or With <a href=\"http:\/\/paraschopra.com\/projects\/pypond\/PyPond_with_graphics.py\">graphics version<\/a> (requires PyGame library)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>For those who are not aware of digital evolution, I am writing a quick short summary. Digital evolution means evolution of computer programs who compete for limited resources such as CPU and memory. In short, it goes something like this: &#8211; You define a universe, which is virtual memory (space) and CPU (time) &#8211; You&hellip; <\/p>\n<div class=\"readmore-wrapper\"><a href=\"https:\/\/invertedpassion.com\/digital-evolution-basics\/\" class=\"more-link\">Read More<\/a><\/div>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"cybocfi_hide_featured_image":"","footnotes":""},"categories":[46,33,48],"tags":[],"class_list":["post-1332","post","type-post","status-publish","format-standard","hentry","category-biology","category-personal","category-technology"],"_links":{"self":[{"href":"https:\/\/invertedpassion.com\/wp-json\/wp\/v2\/posts\/1332","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/invertedpassion.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/invertedpassion.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/invertedpassion.com\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/invertedpassion.com\/wp-json\/wp\/v2\/comments?post=1332"}],"version-history":[{"count":0,"href":"https:\/\/invertedpassion.com\/wp-json\/wp\/v2\/posts\/1332\/revisions"}],"wp:attachment":[{"href":"https:\/\/invertedpassion.com\/wp-json\/wp\/v2\/media?parent=1332"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/invertedpassion.com\/wp-json\/wp\/v2\/categories?post=1332"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/invertedpassion.com\/wp-json\/wp\/v2\/tags?post=1332"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}