Talk:Timeline of algorithms
This article is rated List-class on Wikipedia's content assessment scale. It is of interest to the following WikiProjects: | |||||||||||
|
An algorithm is a procedure that solves a fundamental (and simply formulated) problem, for exemple sorting an array of integers or computing Voronoi cells from a set of points. A complex piece of software, an encoding or a format is not an algorithm.
For exemple cyphers do not belong on this list. I accept things like Diffie-Hellman or RSA, but certainly not MD5, RC4, AES, etc... Those are applications, not algorithms. That's like saying JPEG is an algorithm. It is not, but the way you compute the DCT is.
Likewise an encoding is not an algorithm. The procedure which does the encoding is however, but the two shouldn't be confused. That's why I wouldn't put things like Hamming codes, Gray codes, Reed-Solomon and the likes. The trick itself is interesting, but the encoding procedure is not notable. User:tonigonenstein
I personally don't agree. MD5, CRC, RS codes to have place. Same as MP3. They are algorithms. 2A02:168:2000:5B:CC4D:BB9A:938:B537 (talk) 04:31, 25 June 2020 (UTC)
should add some important geometrical constructs such as besecting an angle, calculating the golden ratio, finding the centre of a polygon
I added "wait-free synchronization" to the list. I didn't even know it was possible until 2004. I stuck it at 1991, since that's the earliest paper I've seen so far:
Wait-Free Synchronization by Maurice Herlihy (1993) http://citeseer.ist.psu.edu/herlihy93waitfree.html (Is this the same as "Wait-Free Synchronization" by Maurice Herlihy (1991) _ACM Transactions on Programming Languages and Systems_ January 1991 ? ) http://c2.com/cgi/wiki?WaitFreeSynchronization
If anyone knows an earlier reference, please tell me and/or fix the article and drop a reference here. -- DavidCary 05:21, 30 May 2004 (UTC)
Other algorithms to add:
- Bezier spline (?)
- Do neural networks have a place here ?
- The neural network back-propagation algorithm
- Public-key encryption
- Hamming codes
- Reed-Solomon encoding (used by NASA to communicate with deep space probes; used by every audio CD player)
- ...
- ...
-- DavidCary 03:23, 2 Jun 2004 (UTC)
Turbo Codes too! - Used by NASA on more recent probes, and have stimulated research into repetitive/recursive decoding). Nice example of recent ground-breaking work. Mat-C 22:26, 21 Jul 2004 (UTC)
There are few other things that should be here:
- Optical flow methods
- Liquid resizing in images
- Raytracing / path tracing method
- Perceptual coding with linear predictive coding (1966) for use of speech audio compress, and MP3 as first full audio codec and compressor (1989-1991?)
- Jackknife resampling ( Maurice Quenouille (1924–1973) from 1949 and refined in 1956. John Tukey expanded on the technique in 1958 ).
- Multipole method for n-body simulations.
- ECC cryptography
- JIT
- Garbage collection
- Perlin noise
- Wavelet decomposition and assosciated methods
- PID controller
- PID autotuning
- Bloom filter
- Binary heap
- MinHash
- Count-min sketch
- SimHash
- ContentID by Google
- TCP
2A02:168:2000:5B:CC4D:BB9A:938:B537 (talk) 04:48, 25 June 2020 (UTC)
Meta Heuristics in the Wild
editCouldn't some common meta heuristics like genetic algorithms, swarm intelligence, and ant colony optimization be said to exist from the first eukaryotes, the Cambrian explosion, and the first ants, for example? Certainly if these weren't in operation, the problem of "how to create an algorithm timeline page" wouldn't have been solved, because we wouldn't be here to solve it. --Dbabbitt 20:37, 19 December 2005 (UTC)
Is there some reason why Alan Turing is omitted from the time-line article (1930s)? von Neumann is mentioned, why not Turing? pbgrose, 11 June 2006
Turing didn't really invent any notable algorithm. He did invent one of the first Chess AI programs, but never actually run it on the computer. So, I guess he did invent some very early AI codes, like mini-max method maybe? He didn't invent things like alpha-beta pruning tho. 2A02:168:2000:5B:CC4D:BB9A:938:B537 (talk) 04:42, 25 June 2020 (UTC)
Monte Carlo methods and random number generations
editIt was in 1930s and 1940s, mostly started with Enrico Fermi and Stanislaw Ulam, before, during and after Manhattan project. Initially done by hand, but later on ENIAC, by von Numann, implemented it in 1947 probably. It is used to this day (physics, finance, science, weather forecasting, computer graphics) in various forms and improvements (Metropolis algorithm which is mentioned in the timeline already, but later). This article by Metropolis from 'Los Alamos Science' Special Issue 1987, gives a lot of history of Monte Carlo - https://permalink.lanl.gov/object/tr?what=info:lanl-repo/lareport/LA-UR-88-9067 . Similarly these methods requires random numbers (both sequence of uniform integers, then converted into different distributions, like gaussian), so they were probably also invented at the same time. I wonder if there are other materials on this matter and more exact dates, as not everything was published in this early days of computing. 2A02:168:2000:5B:CC4D:BB9A:938:B537 (talk) 03:37, 25 June 2020 (UTC)
Gaussian elimination
editI think '263 AD – Gaussian elimination described by Liu Hui' is somehow inaccurate. There are known texts even older than that mentioning Gaussian elimination in the ancient China. I think almost 150 BC some of them mention it, and more complete texts from 179 AD about it. Also I think it should be mentioned in the table the popularization of the method by Newton, Gauss and Jordan, which leads to its current wide spread use. They were probably not aware of Chine methods and texts. — Preceding unsigned comment added by 2A02:168:2000:5B:CC4D:BB9A:938:B537 (talk) 03:43, 25 June 2020 (UTC)