Computer Science

geeky stuff

The Artificial Bee Colony (ABC) algorithm as a non-standard computational method

Swarm intelligence is defined in the academic literature as the ability to design algorithms inspired by the collective behaviour of decentralized and self-organized social insect colonies. A well-known example of swarm intelligence is a honey bee swarm which has enthused researchers to develop algorithms based on the various activities taking place within a bee colony. An example of one such algorithm is the Artificial Bee Colony (ABC) algorithm proposed by Karaboga in 2005 which simulates the foraging behavior of bees for solving optimization problems and is the one of the most widely studied swarm based algorithms so far.

Read More…

A glimpse back in time: an overview of the EDSAC

The Electronic Delay Storage Automatic Calculator (EDSAC) was one of the world’s first full scale electronic computer to implement the stored-program principle which states that both data and program are to be stored in the computer’s main memory and accessed during runtime. It was built by Professor Maurice Wilkes (1913 – 2010) and his team at the Mathematical Laboratory of the University of Cambridge in the United Kingdom. EDSAC, which occupied room five by four meters, did its first calculation on 6 May 1949 when it calculated a table of squares and a list of prime numbers and it was David Wheeler (1927 – 2004) who wrote its very first program. The machine ran until 1958, when it was finally switched off.

A large part of the design of the EDSAC was based upon John von Neumann’s report First Draft of a Report on the EDVAC which contained the first published description of the logical design of a computer using the stored-program concept, known as the “von Neumann architecture”. Few months after reading von Neumann’s report, Wilkies attended a workshop at the University of Pennsylvania’s Moore School of Engineering, where ENIAC (the world’s first general-purpose electronic computer) had been built, and even more advanced computer, the EDVAC, was being constructed. While EDVAC was being constructed by a large team of engineers and its construction consumed large budget, Wilkies had a very modest budget within which to work and only few assistants. However, he was more interested in using an advanced computer to solve real scientific problems rather than becoming an expert computer-maker as such. For all these reasons, Wilkies decided to construct his own scaled-down version of EDVAC, called EDSAC, and to do it as quickly as his limited resources would allow.

Read More…

The Dining Philosophers Problem in concurrent programming

Posed and solved by Edsger Dijkstra in 1965, the Dining Philosophers Problem is a classic problem in Concurrent Programming and is often used to illustrate synchronization issues and techniques for resolving them.

Five silent philosophers are sitting around a circular table. They never talk to each other, spending their time thinking. In the middle of the table is a bowl of rice. Between each pair of adjacent philosophers, there is a chopstick and they have agreed that each will only use the chopstick to his immediate right and left when eating from the bowl of rice. So unfortunately, as philosophy is not as well paid as computing, the philosophers can only afford five chopsticks laid out on the table such that the first philosopher’s right chopstick is the left chopstick of the second philosopher, whose right chopstick is the left chopstick of the third philosopher and so forth.

Read More…

 Scroll to top