170 likes | 366 Views
Exploring the Collatz Conjecture: A Distributed Computing Approach. Student Name: Desmond McPhillips Student ID: 13806604 Project Supervisor: Dr. Piyush Ojha Course: BSc Hons Computing Science Date: Dec 2007. Overview. Introduction: What is the Collatz Conjecture?
E N D
Exploring the Collatz Conjecture: A Distributed Computing Approach Student Name: Desmond McPhillips Student ID: 13806604 Project Supervisor: Dr. Piyush Ojha Course: BSc Hons Computing Science Date: Dec 2007.
Overview • Introduction: What is the Collatz Conjecture? • Literature Review • Aims and Objectives • Requirements analysis and specification • Initial Design • Implementation Strategy • Project Management
Introduction Mathematical Conjecture: An Mathematical proposition which is speculated to be true but has not been proved. • The Collatz Conjecture is one such proposition. • First proposed by Lothar Collatz in 1937 • The conjecture has eluded and intrigued mathematicians • Prize fund established to reward the first person(s) to solve the problem.
Introduction • Easy to state: The conjecture itself is easy to state: the following iterations of any positive integer will always end in the Xn = 4, Xn+1 = 2, Xn+2 = 1, Xn+3 = 4 cycle: Xi + 1 = ½ Xi if Xi is even Xi + 1 = 3 Xi+ 1 if Xi is odd Example: initial X = 6; 3,10,5,16,8,4,2,1= 8 iterations Important Numbers: 3, 16 and 8 (These are the statistics gathered, useful for mathematicians)
Literature Review Work on the conjecture has been an on-going process with the majority of the breakthroughs coming quite recently. • Oliveira e Silva – May 2007, verified the range up to 2^58 1. • Eric Roosendaal -- June 2007, verified the range up to 2^59 2. • Both used computational, distributed approach. 1. http://www.ieeta.pt/~tos/3x+1.html 2.http://www.ericr.nl/wondrous/index.html
Aims and Objectives The proposed project is quite similar to the approaches taken above, an application to compute mass ranges of values and verify the conjecture. • Why re-invent the wheel? • Key Differences: Operating System Independence Automatic Distribution Graphical Interface
Aims and Objectives Operating System Independence: The established approaches have been dependant on the operating system in which they were first developed. • Proposed project: Windows Unix Mac OS With a greater range of operating systems supported, the application can gain wider user contribution.
Aims and Objectives Automatic Distribution: • No importance to Silva. • Roosendaal’s was restrictive. The proposed project is to make the block acquisition an automatic process. Once a client has completed a range of number and verified it, the client is then supplied with another range to verify.
Aims and Objectives Graphical Interface: The proposed project will include a graphical interface to make the process more meaningful to the client, especially if the application is used when the system is idle and can be used as a screensaver.
Requirements analysis and specification To make this possible, certain aspects need to be addressed, such as: • Server application Shall store information about clients (identifier, hardware/system environments). Shall store this information in a back end database (MySQL). Shall assign ranges for computation/verification by clients. Shall aggregate statistical data from computations returned by clients
Requirements analysis and specification • Clientapplication: Shall verify the conjecture on the ranges assigned to it and gather the statistical data. Shall be OS Independent . Shall run when the clients machine is idle (possibly as a screensaver). Shall report to the server on completion and request a new range to work on.
Initial Design Below is a prototype of the client side application interface:
Implementation Strategy • Development Language: Ideal language given the time constraints and requirements would be Java – JNI can be implemented to offset any computational overhead. • Prototype: Complete, see prototype GUI. • Incremental development: A series of beta releases on a 6-8 week basis before the final release in April 2008.
Implementation Strategy • Testing: Due to the nature of the application, access to a wide range of computers is needed to fulfil a test condition; Wombat Financial Software will be able to satisfy this requirement with access to their mass computer network and servers.
Project Management Since I have decided upon Incremental development, I have outlined my release goals: • Beta release one: 17th Dec 2007 • Beta release two: 4th Feb 2008 • Beta release three: 24th March 2008 • Final release and project report: April 2008
Summary • Computational exploration on the Collatz Conjecture. • Distributed approach to the problem. • Improve on the current approaches. • Gather statistical information – can be used to aid mathematical proof. • All aspects completed: April 2008 • Any Questions.. ?