Join the crowd with swarm intelligence

A shoal of fish crammed into a cylindrical tank.
Image by Paul Sloane from Pixabay

Next time you are in a large crowd, look around you: all those people moving together, and mostly not bumping into each other. How does it happen? Flocks of birds and schools of fish are also examples of this ‘swarm intelligence’. Computer Scientists have been inspired by this behaviour to come up with new solutions to really difficult problems.

Swarming behaviour requires the individuals (birds, fish or people) to have a set of rules about how to interact with the individuals nearest to them. These so-called ‘local’ rules are all that’s needed to give rise to the overall or ‘global’ behaviour of the swarm. We adjust our individual behaviour according to our current state but also the current state of those around us. If I want to turn left then I do it slowly so that others in the crowd can be aware of it and also start to turn. I know what I am doing and I know what they are doing. This is how information makes its way from the edges of the crowd to the centre and vice versa.

A swarm is born

The way a crowd or swarm interacts can be explained with simple maths. This maths is a way of approximating the complex psychological behaviour of all the individuals on the basis of local and global rules. Back in 1995 James Kennedy, a research psychologist, and Computer Scientist Russ Eberhart, having been inspired by the study of bird flocking behaviour by biologist Frank Heppner, realised that this swarm intelligence could be used to solve difficult computer problems. The result was a technique called Particle Swarm Optimisation (PSO).

Travel broadens the mind

An optimisation problem is one where you have a range of options to choose from and you want to know the best solution. One of the classic problems is called ‘The travelling salesperson’ problem. You work for a company and have to deliver packages to say 12 towns. You look at the map. There are many different routes to take, but which is the one that will let you visit all 12 towns using the least petrol? Here the choices are the order in which you visit the towns, and the constraint is that you want to do the least driving. You could have a guess, select the towns in a random order and work out how far you’d have to travel to visit them in this order. You then try another route through all 12 and see if it takes less mileage, and so on. Phew! It could take a long time to work out all the possible routes for 12 towns to see which was best. Now imagine your company grows and you have to deliver to 120 towns or 1200 towns. You would spend all your time with the maps trying to come up with the cheapest solutions. There must be a better way? Well actually simple as this problem seems it’s an example of a set of computational problems known as NP-Complete problems and it’s not easy to solve! You need some guidance to help you through and that’s where swarm optimisation come in. It’s an example of a so-called metaheuristic algorithm: a sort of ‘general rule of thumb’ to help solve these types of problem. It won’t always work unless you have infinite time but it’s better than just trying random solutions. So how does swarm optimisation work here?

State space: the final frontier

First we need to turn the problem into something called a state space. You probably use state spaces all the time but just don’t know it. Think about yourself. What are the characteristic you would use to tell people about your current state: age, height, weight and so on. You can identify yourself by a list of say 3 numbers – one for age, one for height, one for weight. It’s not everything about you of course but it does define your state to some extent. Your numbers will be different to other people’s numbers, if you take all the numbers for your friends you would have a state space. It would be a 3-dimensional space with axes: age, height and weight, and each person would be a point in that space at some coordinate (X, Y, Z).

So state spaces are just a way of representing the possible variations in some problem. With the 12 towns problem, however, you couldn’t draw this space: it would be 12 dimensional! It would have one axis for each town, with the position on the axis an indication of where in the route it was. Every point in that space would be a different route through the 12 towns, so each point in the space would have coordinates (x1, x2, x3, … x11, x12). For each point there would also be a mileage associated with the route, and the task is to find the coordinate point (route) with the lowest mileage.

Where no particle has swarmed before

Enter swarm optimisation. We create a set of ‘particles’ that will be like birds or fish, and will fly and swarm through our state space. Each particle starts with a random starting location in the state space and calculates the mileages involved for the coordinates (route) they are at. The particles remember (store) this coordinate and also the value of the mileage at that position. Each particle therefore has it’s own known ‘local’ best value (where the lowest mileage was) but can compare this with other neighbouring particles to see if they have found any even better solutions. The particles then move onwards randomly in a direction that tends to move them towards their own local best and the best value found by their neighbours. The particles ‘fly’ around the state space in a swarm homing in on even better solutions until they all converge on the best they can find: the answer.

It may be that somewhere in a part of the space where no particle has been there is an even better solution, perhaps even the best solution possible. Our swarm will have missed it! That’s why this algorithm is a heuristic, a best guess to a tough problem. We can always add some more particles at the start to fill more of the state space and reduce the chance of missing a good solution, but we cant ever be 100% sure.

Swarm optimisation has been applied to a whole range of tough problems in computing, electronic engineering, medicinal chemistry and economics. All it needs is for you to create an appropriate state space for your problem and let the particles fly and swarm to a good solution.

It’s yet another example of clever computing based on behaviours found in the natural world. So next time you’re in a crowd, look around and appreciate all that collective interacting swarm intelligence…but make sure you remember to watch where you are stepping.

by Peter W. McOwan, Queen Mary University of London. From the archive.

More on …

Related Magazines …

cs4fn issue 4 cover
A hoverfly on a leaf

Our Books …


Subscribe to be notified whenever we publish a new post to the CS4FN blog.


This page is funded by EPSRC on research agreement EP/W033615/1.

QMUL CS4FN EPSRC logos

Nemisindo: breaking the sound barrier

Womens feet walking on a path
Image by ashokorg0 from Pixabay

Games are becoming ever more realistic. Now, thanks to the work of Joshua Reiss’s research team and their spinout company, Nemisindo, it’s not just the graphics that are amazing, the sound effects can be too.

There has been a massive focus over the years in improving the graphics in games. We’ve come along way from Pong and its square ball and rectangular paddles. Year after year, decades after decade, new algorithms, new chips and new techniques have been invented that combined with the capabilities of ever faster computers, have meant that we now have games with realistic, real-time graphics immersing us in the action as we play. And yet games are a multimedia experience and realistic sounds matter too if the worlds are to be truly immersive. For decades film crews have included whole teams of Foley editors whose job is to create realistic everyday sounds (check out the credits next time you watch a film!). Whether the sound is of someone walking on a wooden floor in bare feet, walking on a crunchy path,opening thick, plush curtains, or an armoured knight clanging their way down a bare, black cliff, lots of effort goes into getting the sound just right.

Game sound effects are currently often based on choosing sounds from a sound library, but games, unlike films, are increasingly open. Just about anything can happen and make a unique noise while doing so. The chances of the sound library having all the right sounds get slimmer and slimmer.

Suppose a knight character in a game drops a shield. What should it sound like? Well, it depends on whether it is a wooden shield or a metal one. Did it land on its edge or fall horizontally, and was it curved so it rang like a bell? Is the floor mud or did it hit a stone path? Did it bounce or roll? Is the knight in an echoey hall, on a vast plain or clambering down those clanging cliffs…

All of this is virtually impossible to get exactly right if you’re relying on a library of sound samples. Instead of providing pre-recorded sounds as sound libraries do, the software of Josh and team’s company Nemisindo (which is the Zulu word for ‘sound effects’), create new sounds from scratch exactly when they are needed and in real time as a game is played. This approach is called “procedural audio technology”. It allows the action in the game itself to determine the sounds precisely as the sounds are programmed based on setting options for sounds linked to different action scenarios, rather than selecting a specific sound. Aside from the flexibility it gives, this way of doing sound effects gives big advantages in terms of memory too: because sounds are created on the fly, large libraries of sounds no longer need to be stored with the program. 

Nemisindo’s new software provides generated procedural sounds for the Unreal game engine allowing anyone building games using the engine to program a variety of action scenarios with realistic sounds tuned to the situation in their game as it happens…

In future, if that Knight steps off the stone path just as she drops her shield the sound generated will take the surface it actually lands on into account…

Procedural sound is the future of sound effects so just as games are now stunning visually, expect them in future to become ever more stunning to listen to too. As they do the whole experience will become ever more immersive… and what works for games works for other virtual environments too. All kinds of virtual worlds just became a lot more realistic. Getting the sound exactly right is no longer a barrier to a perfect experience.

Nemisindo has support from Innovate UK.

– Paul Curzon, Queen Mary University of London

More on …


Magazines …


Our Books …

Subscribe to be notified whenever we publish a new post to the CS4FN blog.


This page is funded by EPSRC on research agreement EP/W033615/1.

QMUL CS4FN EPSRC logos

The logic piano

Piano keys
Image by Elisa from Pixabay

Victorian, William Stanley Jevons was born in Liverpool in 1835. He was famous in his day as an economist and his smash hit book ‘The Coal Question’ drew the nation’s attention to the reduction in Britain’s coal supplies. He was the first economist to raise the issue of the ecological impact of economics. Jevons had other strings to his bow though and one of the strangest for the time if also incredibly forward thinking was his 1869 “logic piano”: a device that looked a little like a piano but that “played” logic.

Jevons was fascinated with logic and reasoning. He believed you could start with one thing (a premise) and from this work through a chain of reasoning to the conclusion. He thought that this could be done for everything. This was based on a principle he espoused of “the substitution of similars”: essentially reasoning based on the idea that “Whatever is true of a thing is true of its like”,  For example, If Pharaohs are gods and Rameses is a Pharaoh (so is one of the things “like” a Pharaoh) then you can conclude Rameses is a god. He built on, and combined the ideas of, the Ancient Greeks with the then new ideas of George Boole, that we now call Boolean logic.

Boolean logic is based on a system of algebra using only the values of true and false (or 1 and 0), with operations corresponding to logical operations such as AND and OR that turn true/false values into new true/false values. This is the logic upon which computers are founded. A key idea was that you can abstract away from actual statements about truth in the real world and just replace them with variables that can stand for anything. Boole had laboriously shown using his logic how new abstract facts could be deduced from existing ones. Jevons realised that when reasoning was thought of like this, it became a mechanical process…and that meant a machine could do it.

His contemporary, Charles Babbage had been working on the idea of building mechanical “computers” but Babbage’s fundamental idea was that machines could do calculation. Jevon’s idea was slightly different and more fundamental: that machines could do logical reasoning, deducing new facts from existing ones. This was an idea that eventually came to fruition in the 20th century with the development of theorem provers where computers were programmed to do complex logical reasoning, even working on building up the whole of mathematics by proving ever more theorems from a few starting facts.

So, (with the help of an unknown craftsperson), Jevons set about designing and building his wooden Logic Piano. The idea was that you could put in the premises, the basic facts, by playing the keys of the “piano”. It would then mechanically apply his reasoning rules to discover all conclusions that could be deduced, altering its conclusion with each new fact added, The keys moved rods and levers that made logical facts appear on (or disappear from) the “display” of the machine – essentially facts on the rods appeared in slots cut into the back of the piano.

The kind of logical problem his machine worked with are Syllogisms (see Superhero Syllogisms). They were invented by the Ancient Greeks who were very good at logic. A syllogism is just a common pattern that combines facts where you figure out a conclusion only using the facts supplied, slotted into a template. For example, if we know facts 1 and 2 in the following template (where you can swap in anything for A, B and C) then we can create a new fact as shown.

FACT 1 ALL A B
FACT 2 C is a A
NEW FACT C B
Image by Paul Curzon

So let’s replace A with the word superheroes, B with fight crime and C with my favourite superhero, Ghost Girl. If we put them in to the template above we get a new “fact” deduced from two existing ones:

FACT 1 ALL super heroes fight crime
FACT 2 Ghost girl is a super hero
NEW FACT Ghost girl fights crime
Image by Paul Curzon
A set of 4 vertical rods with
A B
 A ~B
~A  B
~A ~B
Image by Paul Curzon

In the piano, a set of rods acted as truth tables, each one giving a true or false values for each variable. So imagine a piano that could deal with two variables A and B. Each of A and B can have two different values true and false, so there are four possibilities (so four rods):

  • (A, B);
  • (A, NOT B);
  • (NOT A, B);
  • (NOT A, NOT B)

where we write A to mean the assertion A is true and NOT A (or ~A in the picture) to mean A is false. Each rod represents a possible state of the world.

Let’s look at a simple example. Suppose A stands for the statement “Paul is a programmer” and B stands for “Safia is a programmer”, then the possibilities (if we know no specific facts) are

  • (Paul is a programmer, Safia is a programmer) : (A, B)
  • (Paul is a programmer, Safia is NOT a programmer) : (A, NOT B)
  • (Paul is NOT a programmer, Safia is a programmer) : (NOT A, B)
  • (Paul is NOT a programmer, Safia is NOT a programmer) : (NOT A, NOT B)
A set of 4 rods with bars that can hide the text if they are moved
A B
 A ~B
~A  B
~A ~B
Image by Paul Curzon

Each rod in Jevon’s piano had one of the possibilities on, so each rod represented a possible state of the world being reasoned about. At the start all the rods were visible, showing that nothing specific was yet known.

The point is that these represent all possible states of the world about Paul and Safia and whether they are programmers or not. If we know nothing more then all we can say is that all the pairs of facts are a possibility: all are possible states of the world.

The piano worked by essentially leaving displayed or hiding each rod’s state as new facts were keyed in. (See the video at the end which includes a detailed explanation by expert David E Dunning on the detail of how it did this step by step). Initially all the possibilities are displayed as above. If we add a new fact that we have discovered or wish to assume, say that “Safia IS a programmer” (in terms of the piano, press the B key corresponding to the fact B is true), then doing so removes all states of the world where Safia is NOT a programmer. The piano, therefore, hides all the rods that include the assertion representing “Safia is NOT a programmer” (all those with (NOT B) on them) . We are left with two alternatives:

second and fourth rod moved so hidden leaving
A B
~A B
Image by Paul Curzon
  • (Paul is a programmer, Safia is a programmer) : (A, B)
  • (Paul is NOT a programmer, Safia is a programmer) : (NOT A, B)

The mechanics of the machine meant that those facts would remain a possibilities (reading down the rods) but pushing the keys for that assertion would have moved the other rods, so hide their state. In doing so, the piano has deduced from the fact B that the possible conclusions are A AND B is true or NOT A AND B is true.

With three variables instead of two the machine would be able to deal with more complex situations – there are then 8 possibilities so 8 rods representing the 8 different states. .

A set of 8 rods with
A B C
A B ~C
A ~B C
A ~B ~C
~A B C
~A B ~C
~A ~B C
~A ~B ~C
Image by Paul Curzon

Let A represent superheroes, (so NOT A represents those people who are not superheroes), B represents those people who fight crime and C with a person being Ghost Girl. Suppose we are considering some, at the moment, random person we know nothing about. The possibilities about them are:

  • (Is a superhero, does fight crime, is Ghost Girl) : (A, B, C)
  • (Is a superhero, does fight crime, is NOT Ghost Girl) : (A, B, NOT C)
  • (Is a superhero, does NOT fights crime, is Ghost Girl) : (A, NOT B, C)
  • (Is a superhero, does NOT fight crime, is NOT Ghost Girl) : (A, NOT B, NOT C)
  • (Is NOT a superhero, does fight crime, is Ghost Girl) : (NOT A, B, C)
  • (Is NOT a superhero, does fight crime, is NOT Ghost Girl) : (NOT A, B, NOT C)
  • (Is NOT a superhero, does NOT fights crime, is Ghost Girl) : (NOT A, NOT B, C)
  • (Is NOT a superhero, does NOT fight crime, is NOT Ghost Girl) : (NOT A, NOT B, NOT C)

If we put the fact about them into the piano that ALL superheroes fight crime (ALL A are B) then we remove all rods where A is true but B is different so false (a superhero who doesn’t fight crime) as in this world, that is impossible.

3rd and 4th rods hidden so
leaving
A B C
A B ~C
~A B C
~A B ~C
~A ~B C
~A ~B ~C
Image by Paul Curzon
  • (Is a superhero, does fight crime, is Ghost Girl) : (A, B, C)
  • (Is a superhero, does fight crime, is NOT Ghost Girl) : (A, B, NOT C)
  • (Is NOT a superhero, does fight crime, is Ghost Girl) : (NOT A, B, C)
  • (Is NOT a superhero, does fight crime, is NOT Ghost Girl) : (NOT A, B, NOT C)
  • (Is NOT a superhero, does NOT fights crime, is Ghost Girl) : (NOT A, NOT B, C)
  • (Is NOT a superhero, does NOT fight crime, is NOT Ghost Girl) : (NOT A, NOT B, NOT C)

Then we add the fact that Ghost Girl is a superhero (C is a A) so remove all those rods where Ghost Girl is not a superhero (ie NOT A, C):

3rd 4th and 5th rods hidden so
leaving
A B C
A B ~C
~A B ~C
~A ~B C
~A ~B ~C
Image by Paul Curzon
  • (Is a superhero, does fight crime, is Ghost Girl) : (A, B, C)
  • (Is a superhero, does fight crime, is NOT Ghost Girl) : (A, B, NOT C)
  • (Is NOT a superhero, does fight crime, is NOT Ghost Girl) : (NOT A, B, NOT C)
  • (Is NOT a superhero, does NOT fight crime, is NOT Ghost Girl) : (NOT A, NOT B, NOT C)

We have deduced (the first possible state) that if the person we are interested in is Ghost girl then she is a superhero. We are also left with other possibilities too. If the person we are considering is not actually Ghost Girl then they may or may not fight crime and may or may not be a superhero!

If we add in an additional fact that the person we are thinking of IS actually Ghost Girl then we remove those extra rods so possibilities and get

All but first rod hidden so
leaving
A B C
Image by Paul Curzon
  • (Is a superhero, does fight crime, is Ghost Girl) : (A, B, C)

Ghost Girl is a superhero who does fight crime! We knew she was Ghost Girl and was a superhero but using the piano we have now deduced that she does fight crime. The machine has deduced the syllogism we gave at the start.

IF ALL superheroes fight crime AND
   Ghost girl is a superhero
THEN
   Ghost girl fights crime.

The actual piano dealt with 4 variables (A, B, C, D) so had 16 rods representing the 16 different combinations. It also included keys to indicate the end of a conjecture, a key for IS A, and more to allow specific assertions to be input. The mechanism then hid rods automatically based on the facts entered. To use it, you did as we did: create a table of what A, B, C and D stand for (this is done outside the machine), enter the facts you want to reason about, and it then displayed all the possible states that remained in terms of A, B, C and D. Then, by seeing what each of the variables stood for in the table, you could convert that answer back into a deduced fact about the real world that you were interested in.

Amazingly, (after a first failed attempt) it did work. It is similar in idea to modern day theorem provers which are used to verify properties of safety-critical computer designs that must npot have bugs. Of course, being small and woody, the logic piano couldn’t solve every thing but then it turns out that was always an impossible dream. Even modern computers (and human mathematicians) have fundamental limits in what they can do (which is another story). The logic piano was a rather amazing, if woody, start to the area of automated theorem proving, though.

Paul Curzon, Queen Mary University of London

Make a paper logic piano

Here is a kit to make a paper or card logic piano of your own (actually more like Jonons’ logic abacus the piano was a mechanised version of):

More on …

A Purely Mechanical Form

A Talk by David E Dunning at the Imagining AI conference about William Stanley Jevons and the logic piano including at the end a more detailed explanation of how pressing keys actually caused rods to by hidden in a series of steps. See also his article about it for the Computer History Museum.


Magazines …


Our Books …

Subscribe to be notified whenever we publish a new post to the CS4FN blog.


This page is funded by EPSRC on research agreement EP/W033615/1.

QMUL CS4FN EPSRC logos

Mike Lynch: sequencing success

Mike Lynch was one of Britain’s most successful entrepreneurs. An electrical engineer, he built his businesses around machine learning long before it was a buzz phrase. He also drew heavily on a branch of maths called Bayesian statistics which is concerned with understanding how likely, even apparently unlikely, things are to actually happen. This was so central to his success that he named his super yacht, Bayesian, after it. Tragically, he died on the yacht, when Bayesian sank in a freak, extremely unlikely, accident. The gods of the sea are cruel.

Synthesisers

A keyboard synthesiser
Image by Julius H. from Pixabay

Mike started his path to becoming an entrepreneur at school. He was interested in music, and especially the then new but increasingly exciting, digital synthesisers that were being used by pop bands, and were in the middle of revolutionising music. He couldn’t afford one of his own, though, as they cost thousands. He was sure he could design and build one to sell more cheaply. So he set about doing it.

He continued working on his synthesiser project as a hobby at Cambridge University, where he originally studied science, but changed to his by-then passion of electrical engineering. A risk of visiting his room was that you might painfully step on a resistor or capacitor, as they got everywhere. That was not surprising giving his living room was also his workshop. By this point he was also working more specifically on the idea of setting up a company to sell his synthesiser designs. He eventually got his first break in the business world when chatting to someone in a pub who was in the music industry. They were inspired enough to give him the few thousand pounds he needed to finance his first startup company, Lynett Systems.

By now he was doing a PhD in electrical engineering, funded by EPSRC, and went on to become a research fellow building both his research and innovation skills. His focus was on signal processing which was a natural research area given his work on synthesisers. They are essentially just computers that generate sounds. They create digital signals representing sounds and allow you to manipulate them to create new sounds. It is all just signal processing where the signals ultimately represent music.

A curving roof made of triangles of glass.
Image by Kang-Rui LENG from Pixabay

However, Mike’s research and ideas were more general than just being applicable to audio. Ultimately, Mike moved away from music, and focussed on using his signal processing skills, and ideas around pattern matching to process images. Images are signals too (resulting from light rather than sound). Making a machine understand what is actually in a picture (really just lots of patches of coloured light) is a signal processing problem. To work out what an image shows, you need to turn those coloured blobs into lines, then into shapes, then into objects that you can identify. Our brains do this seamlessly so it seems easy to us, but actually it is a very hard problem, one that evolution has just found good solutions to. This is what happens whether the image is that captured by the camera of a robot “eye” trying to understand the world or a machine trying to work out what a medical scan shows. 

This is where the need for maths comes in to work out probabilities, how likely different things are. Part of the task of recognising lines, shapes and objects is working out how likely one possibility is over another. How likely is it that that band of light is a line, how likely is it that that line is part of this shape rather than that, and so on. Bayesian statistics gives a way to compute probabilities based on the information you already know (or suspect). When the likelihood of events is seen through this lens, things that seem highly unlikely, can turn out to be highly probably (or vice versa), so it can give much more accurate predictions than traditional statistics. Mike’s PhD used this way of calculating probabilities even though some statisticians disdained it. Because of that it was shunned by some in the machine learning community too, but Mike embraced it and made it central to all his work, which gave his programs an edge.

While Lynett Systems didn’t itself make him a billionaire, the experience from setting up that first company became a launch pad for other innovations based on similar technology and ideas. It gave him the initial experience and skills, but also meant he had started to build the networks with potential investors. He did what great entrepreneurs do and didn’t rest on his laurels with just one idea and one company, but started to work on new ideas, and new companies arising from his PhD research.

Fingerprints

Fingerprint being scanned
Image by alhilgo from Pixabay

He realised one important market for image pattern recognition, that was ripe for dominating, was fingerprint recognition. He therefore set about writing software that could match fingerprints far faster and more accurately than anyone else. His new company, Cambridge Neurodynamics, filled a gap, with his software being used by Police Forces nationwide. That then led to other spin-offs using similar technology

He was turning the computational thinking skills of abstraction and generalisation into a way to make money. By creating core general technology that solved the very general problems of signal processing and pattern matching, he could then relatively easily adapt and reuse it to apply to apparently different novel problems, and so markets, with one product leading to the next. By applying his image recognition solution to characters, for example, he created software (and a new company) that searched documents based on character recognition. That led on to a company searching databases, and finally to the company that made him famous, Autonomy.

Fetch

A puppy fetching a stick
Image from Pixabay

One of his great loves was his dog, Toby, a friendly enthusiastic beast. Mike’s take on the idea of a search engine was fronted by Toby – in an early version, with his sights set on the nascent search engine market, his search engine user interface involved a lovable, cartoon dog who enthusiastically fetched the information you needed. However, in business finding your market and getting the right business model is everything. Rather than competing with the big US search engine companies that were emerging, he switched to focussing on in-house business applications. He realised businesses were becoming overwhelmed with the amount of information they held on their servers, whether in documents or emails, phone calls or videos. Filing cabinets were becoming history and being replaced by an anarchic mess of files holding different media, individually organised, if at all, and containing “unstructured data”. This kind of data contrasts with the then dominant idea that important data should be organised and stored in a database to make processing it easier. Mike realised that there was lots of data held by companies that mattered to them, but that just was not structured like that and never would be. There was a niche market there to provide a novel solution to a newly emerging business problem. Focussing on that, his search company, Autonomy, took off, gaining corporate giants as clients including the BBC. As a hands-on CEO, with both the technical skills to write the code himself and the business skills to turn it into products businesses needed, he ensured the company quickly grew. It was ultimately sold for $11 billion. (The sale led to an accusation of fraud in hte US, but, innocent, he was acquitted of all the charges).

Investing

From firsthand experience he knew that to turn an idea into reality you needed angel investors: people willing to take a chance on your ideas. With the money he made, he therefore started investing himself, pouring the money he was making from his companies into other people’s ideas. To be a successful investor you need to invest in companies likely to succeed while avoiding ones that will fail. This is also about understanding the likelihood of different things,  obviously something he was good at. When he ultimately sold Autonomy, he used the money to create his own investment company, Invoke Capital. Through it he invested in a variety of tech startups across a wide range of areas, from cyber security, crime and law applications to medical and biomedical technologies, using his own technical skills and deep scientific knowledge to help make the right decisions. As a result, he contributed to the thriving Silicon Fen community of UK startup entrepreneurs, who were and continue to do exciting things in and around Cambridge, turning research and innovation into successful, innovative companies. He did this not only through his own ideas but by supporting the ideas of others.

Man on rock staring at the sun between 2 parallel worlds
Image by Patricio González from Pixabay

Mike was successful because he combined business skills with a wide variety of technical skills including maths, electronic engineering and computer science, even bioengineering. He didn’t use his success to just build up a fortune but reinvested it in new ideas, new companies and new people. He has left a wonderful legacy as a result, all the more so if others follow his lead and invest their success in the success of others too.

In memory of a friend

– Paul Curzon, Queen Mary University of London

More on …

Magazines …

Front cover of CS4FN issue 29 - Diversity in Computing


Subscribe to be notified whenever we publish a new post to the CS4FN blog.


This page is funded by EPSRC on research agreement EP/W033615/1.

QMUL CS4FN EPSRC logos

Superhero Syllogisms

Kapow
Image by Andrew Martin from Pixabay

Superheroes don’t just have physical powers. Often they come out on top because of their mental abilities. Sherlock is a good example, catching villains through logical thinking. Anyone can get better at thinking! Just practice.

It is important for everyone to be able to think clearly. It is especially true for programmers, detectives and lawyers as well as superheroes. You need to be able to work things out from the facts you know. The Ancient Greeks were very good at logic. They invented the idea of a ‘syllogism’. These are common patterns that combine facts where you figure out a conclusion only using the facts.

For example, if we know facts 1 and 2 below (where you can swap in anything for X, Y and Z) then we can create a new fact as shown.

FACT1 ALL X Y
FACT 2 Z IS A X
NEW FACT Z Y
Image by Paul Curzon

So let’s replace X with the word superheroes, Y with fight crime and Z with my favourite superhero, Ghost Girl. If we put them in to the picture above we get the new picture:

FACT 1 ALL super heroes fight crime
FACT 2 Ghost girl is a super hero
NEW FACT Ghost Girl fights crime
Image by Paul Curzon

In this case we can deduce the new fact that Ghost Girl fights crime. Notice how you use the plurals in Fact 1 and singular words in the other facts to make the English work.

Puzzles

Can you solve these Superhero Syllogism puzzles? Work out which conclusion is the one that follows from the given facts. Use our coloured template above to help.

Superhero syllogism puzzle 1

FACT 1: ALL superheroes do good.
FACT 2: The Invisible Woman is a superhero.

Which statement below (a, b, c or d) can we say from these facts alone? Don’t use anything extra, just use fact 1 and fact 2. (ANSWERS at the bottom of the page).

a) The Invisible Woman has superpowers.
b) The Invisible Woman does good.
c) The Invisible Man does good.
d) The Invisible Woman does not do good

Superhero syllogism puzzle 2

FACT 1: ALL superheroes sometimes accidentally do harm.
FACT 2: Jamila is a superhero.

What can we say from these facts alone?

a) Jamila sometimes accidentally does harm.
b) Jamila is not a superhero
c) Those with superpowers only do good.
d) Jamie is a superhero

Superhero syllogism puzzle 3

FACT 1: ALL supervillains laugh in an evil way.
FACT 2: The Spider is a supervillain.

What can we say from these facts alone?

a) The Spider sometimes accidentally does harm.
b) The Spider does not laugh in an evil way.
c) Supervillains are evil.
d) The Spider laughs in an evil way.

As long as the facts are true the conclusion follows, though if the facts are not true then nothing is really known.

Superhero syllogism puzzle 4

The following logic is good but something has gone wrong because the conclusion is not true. The superhero called the Angel does not actually have any superpowers! The Angel just wears a flying suit! Can you work out what has gone wrong with our logic?

1. ALL superheroes have superpowers.
2. The Angel is a superhero.

Therefore we can conclude from these facts alone that

3.The Angel has superpowers.

Answers are at the bottom of the page.

Fun to do

Take the pattern of the above syllogisms and invent your own. Just substitute your own words, but keep the pattern.See how silly the “facts” you can deduce are.

– Paul Curzon, Queen Mary University of London, first appeared in A BIT of CS4FN 2

More on …


Magazines …


Our Books …

Subscribe to be notified whenever we publish a new post to the CS4FN blog.


This page is funded by EPSRC on research agreement EP/W033615/1.

QMUL CS4FN EPSRC logos

Answers

Superhero syllogism puzzle 1

Answer: b.
FACT 1: ALL superheroes … do good.
FACT 2: The Invisible Woman is a superhero
Therefore we can conclude from these facts alone that
NEW FACT: The Invisible Woman … does good.

Superhero syllogism puzzle 2

Answer: a.
FACT 1: ALL superheroes … sometimes accidentally do harm.
FACT 2: Jamila is a superhero
Therefore we can conclude from these facts alone that
NEW FACT: Jamila … sometimes accidentally does harm.

Superhero syllogism puzzle 3

Answer: d.
FACT 1: ALL supervillains … laugh in an evil way.
FACT 2: The Spider is a supervillain.
Therefore we can conclude from these facts alone that
NEW FACT: The Spider … laughs in an evil way.

Superhero syllogism puzzle 4

Something has gone wrong. We are told  that The Angel has no superpowers. They just wear a special flying suit. The new fact is therefore not true. This means that one of the original ‘facts’ was not actually true. If we start from things that are not true then the things we deduce will not be true either! In this case

EITHER:

Some superheroes do NOT have superpowers

OR:

The Angel is NOT a superhero.

Eating at Quonk: a tough puzzle?

cafe empty chairs
Image from pixabay

A group of friends: 2 women (Alice and Babs) and 2 men (Zach and Yabu) like to go out on dates to cool restaurants in pairs. There are four combinations they date in (Alice-Zach, Alice-Yabu, Babs-Zach and Babs-Yabu).

The favourite restaurant of one of the men and one of the women is a place called Quonk. However if those two eat together they always try new restaurants as do the other pair if together. Therefore when exactly one and only one of the particular man and woman in question is on a date they eat at Quonk.

When Alice goes out with Zach they go to Quonk.

Which, if any, other pair eat at Quonk?

  • Alice and Yabu eat at Quonk
  • Babs and Zach eat at Quonk
  • Babs and Yabu eat at Quonk
  • None of the other pairs eat at Quonk

Find the answer here.

– Paul Curzon Queen Mary University of London, from the archive

More on …


Magazines …


Our Books …

Subscribe to be notified whenever we publish a new post to the CS4FN blog.


This page is funded by EPSRC on research agreement EP/W033615/1.

QMUL CS4FN EPSRC logos

From a handful of sand to a fistful of dollars

Where computer chips come from

Sitting at the heart of your computer, mobile phone, smart TV (or even smart toaster) is the microprocessor that makes it all work. These electronic ‘chips’ have millions of tiny electronic circuits on them allowing the calculations needed to make your gizmos work. But it may be surprising to learn that these silicon chips, now a billion pound industry worldwide are in fact mostly made of the same stuff that you find on beaches, namely sand.

A transistor is just like a garden hose with your foot on it

Sand is mostly made of silicon dioxide, and silicon, the second most abundant substance in the earth’s crust, has useful chemical properties as well as being very cheap. You can easily ‘add’ other chemicals to silicon and change its electrical properties, and it’s by using these different forms of silicon that you can make mini switches, or transistors, in silicon chips.

House Hose

A transistor on a chip can be thought of like a garden hose, water flows from the tap (the source) through the hose and out onto the garden (the drain), but if you were to stand on the hose with your foot and block the water flow the watering would stop. An electronic transistor on a chip in its most basic form works like this, but electrical charge rather than water runs through the transistor (in fact the two parts of a transistor are actually called the source and drain). The ‘gate’ plays the part of your foot; this is the third part of the transistor. Applying a voltage to the gate is like putting your foot on and off the hose, it controls whether charge flows through the transistor.

Lots of letter T’s

A billion pound industry made of sand

If you look at a transistor on a chip it looks like a tiny letter T, the top crossbar on the T is the source/drain part (hose) and the upright part of the T is the gate (the foot part). Using these devices you can start to build up logic functions. For example, if you connect the source and drain of two transistors together one after another it can work out the logic AND function. How? Well think of this as a long hose with you and a friend’s foot available. If you stand on the hose no water will flow. If your friend stands on the hose no water will flow. If you both stand on the hose defiantly no water will flow. It is only when you don’t stand on the hose AND your friend also doesn’t stand on the hose that the water flows. So you’ve build a simple logical function.

Printing chips

From such simple logic functions you can build very complex computers, if you have enough of them, and that’s again where silicon comes in. You can ‘draw’ with silicon down to very small sizes. In fact a silicon chip is printed with many different layers. For example, one layer has the patterns for all the sources and drains, the next layer chemically printed on top are the gates, the next the metallic connections between the transistors and so on. These chips take millions of pounds to design and test, but once the patterns are correct it’s easy to stamp out millions of chips. It’s just a big chemical printing press. It’s the fact that you can produce silicon chips efficiently and cheaply with more and more transistors on them each year that drives the technology leaps we see today.

Beautiful silicon

Finally you might wonder how the chip companies protect their chip designs? They in fact protect them by registering the design of the masks they use in the layer printing process. Design registration is normally used to protect works of artistic merit, like company logos. Whether chip masks are quite as artistic doesn’t seem to matter. What does matter is that the chemical printing of silicon and lots of computer scientists have made all today’s computer technology possible. Now there is a beautiful thought to ponder when next on the beach.

– Paul Curzon, Queen Mary University of London

This article was first published on the original CS4FN website.


More on …

Magazines …

You probably won’t be surprised to learn that computer science can now also help improve the creation of computer chips. Computational lithography (literally ‘stone writing’) improves the resolution needed to etch the design of these tiny components onto the wafer thin silicon, using ultraviolet light (photoglithography = ‘stone writing with light’). Here’s a promotional video from ASML about computational lithography.


Subscribe to be notified whenever we publish a new post to the CS4FN blog.


This page is funded by EPSRC on research agreement EP/W033615/1.

QMUL CS4FN EPSRC logos