Category: Problem Solving

Mechanical Chef

Mechanical Chef

On November 17th, 2017 at the Maker Faire in Bangalore, on stage before an audience of a few hundred people, a machine cooked a simple Indian side-dish – a potato fry.

The next day it prepared a pot of rice.

In so doing, it became the world’s first machine to cook an Indian meal autonomously.

23593357_1514971115237798_1402609992841796738_o (1)

The Mechanical Chef is the coming to fruition of an idea that germinated in the year 2012, when a colleague and I were walking down Millers Road, on the way to a cup of coffee at a roadside store, and I asked the colleague if there was any way in which we could really change the world and ‘make a dent in the universe’ as it were, in the present millennium.

The colleague was a woman, and she said that if Indian women didn’t have to do any cooking, it would save a large fraction of half a billion women in India 3 hours a day every day of their lives.

That day in 2012, my colleague, Princiya and I started dissecting Indian cooking.

We came up with simple operations that underlay Indian recipes that did not require shaping (we aren’t aiming to prepare rotis {there’s a machine for that already}, idlis or dosas {again, there’s a machine available for that}).

And they were:

  1. Adding ingredients
  2. Heating
  3. Manipulations such as stirring, sieving, grinding, whisking and powdering
  4. Transferring from one container to another

And we came up with a machine that could do all the above.

At the time, there was a Chinese cooking robot which could cook stir-fried (wok-friend) dishes:

and there were several experimental machines like Moley which used expensive robotic arms for cooking.

There is even another team in Bangalore that is also working at present on a cooking robot for Indian food!

 

Our First Design

In 2012 we came up with a much simpler architecture which could support all the above cooking functions (the ones that would be needed for Indian cooking).  It was a type of sensor network for cooking.

It was an improvement over the Chinese automated wok in that it could cook multiple dishes at the same time, and it was an improvement over the robotic arms because it was much simpler and therefore more cost-effective.

We took the drawings to Dr. Raju of Systemantics (a maker of industrial robots in Bangalore) one day.  He listened to us patiently and observed that our machine would need very powerful motors in order to lift heavy vessels up against the force of gravity.

This is a common mistake that firms developing cooking robots make.  Going against gravity is never a good idea when you have to carry kilograms of ingredients in a vessel.  The motors end up having to be big and powerful and friction becomes a very big hindrance to smooth movement.

So, we went back to the drawing board.

 

Our Second Design

Last year (in 2016), we developed a machine that looked a bit like this one at MIT:

… and this one …

In our second design, the cooking vessels moved on a linear rail and ingredients dropped into them from above much like they do in the machines above.

We did not have a grinder and could not transfer ingredients from one container to another at will in our design.

But as we analysed Indian cooking recipes further, we realized that the vast majority of Indian dishes did not need any transferring of ingredients across vessels, and even if they did, we could stop the cooking at a certain point and ask a human to do the transfer without greatly impacting the automatic cooking experience.

We could also get by without grinding for many dishes if we used specially made powders in our cooking machine.

It was with this design that I went to my old friend Prashanth G. B. N., a mechanical engineer and designer of hardware systems, for his advice.

He took a look at the drawings and felt we would have to make the machine even simpler if it had to be used in Indian homes.

 

Our Third Design

He took a sheet of paper and sketched on it a design that had only rotary movements.

“Rotary motion is far simpler to build out than linear motion” he explained.

After developing a detailed drawing of the machine, Prashanth and I took out a patent on the same.

 

From Design to Reality

The Mechanical Chef however only turned into reality when Arpit Sharma, an aerospace engineer from Rajasthan joined me and solved all the mechanical problems that remained.

We had to solve the problem of dispensing powders from a removable and easy-to-wash and easy-to-assemble container.

We had to find ways to completely dissociate the parts that came into contact with the food from the parts that came into contact with the electricals so that the former would be easy to clean.

We had to minimize the number of parts that needed to be cleaned after every cook.

We needed to finesse the electronics and electricals – a job which was often summarily dropped into the lap of a young engineer from Mysore – Avinash Bharadwaj.

To support ourselves as we worked on all these problems and to pay for the hardware, we applied for a grant from the Department of Science and Technology of the Government of India through IIT-Bombay.  In October of this year, we received the grant.

The first prototype that Arpit Sharma built looked like this.

Rendered_CAD_model

And it worked!

 

The Proof of the Pudding is in the Eating

Here’s a video of the machine at work.  And you’re welcome to stop by and be one of the first humans on earth to eat Indian food cooked by a robot.

Here’s how it stirs.

Here’s our mini funding pitch!

Here’s our team at the office with the Mechanical Chef.

IMG_20171207_154327

There’s a little website for it:  http://www.mechanicalchef.com

Write to us if you’d like to drop by and see us.

Advertisements

Decongesting Bangalore’s Roads: An Analysis of the BDA’s Detailed Project Report on the Proposed Flyover

In response to public demand, the Bangalore Development Authority (BDA) has finally released the Detailed Project Report (DPR) for the proposed steel flyover in Bangalore.

In this article we’ll attempt to address (using points from the DPR), the key question of whether the flyover will be of any use to commuters.

The DPR contains a study of traffic volumes at each of the intersections, and summarizes its findings in the following three diagrams (page 58) which are very easy to understand.

dpr_530dpr_531dpr_532

The Numbers

The numbers in the diagrams are peak hour traffic numbers at all junctions affected by the project in terms of PCUs/hr.  PCU stands for Passenger Car Unit.

So, the first diagram says for example, that at peak hour traffic, there is the equivalent of 6175 cars entering from Hebbal and 6949 cars exiting at Rajbhavan Road in one hour.

The second diagram shows the impact of the flyover on ground-level traffic.  It shows that the number of cars entering at ground level from Hebbal will drop to 3088 while the number of cars exiting at Rajbhavan Road will drop to 4122.

The excess traffic (3087 incoming at Hebbal and 1393 outgoing at Rajbhavan Road) will be carried on the flyover.

The incoming numbers add up (3087 + 3088 = 6175) as expected.

The outgoing numbers don’t add up (1393 + 4122 < 6949)!

The outgoing traffic numbers don't add up because there will no longer be a right turn at Basaveshwara Circle.  So, a part of the traffic volume decrease has nothing to do with the flyover!

Anyways, these calculations, if assumed correct, point to a reduction in traffic by 20% to 50% at the ground level.

Travel Time Calculations

Will the reduction in traffic lead to a corresponding decrease in travel time?

Not necessarily.

The DPR contains no estimate of reductions in travel time.

There are three reasons for doubting there will be huge reductions in overall travel time:

  1.  The impact of the constriction of the road leading to and from the flyover because of the ramps of the flyover needs to be taken into account.  The bottlenecks at the ramps could lead to traffic piling up at the entrances and the exists of the flyover.
  2. If the total capacity of the roads carrying traffic away from the flyover is too low, it could lead to traffic queueing up on the flyover itself.

Those who prepared the DPR should have run a simulation of the traffic on the flyover, below it and on the roads leading into and out of the flyover to determine if any savings in travel time would result or if serious backups on the flyover and around it could cancel any benefits.

A case in point is the flyover from the Electronic City software technology park (STP) to the Silk Board.  It might allow traffic to move fast on it, but it might be slowing down traffic inside the STP and on the road below it at its exit.

Flyover Effectiveness Conclusions

We don’t know if the travel time will decrease significantly unless the required simulations are done.

Public Transportation Conclusions

However, it is possible from the DPR to draw conclusions about the effectiveness of public transportation.

We see from the study that only 2% to 3.5% of the vehicles on the roads are city buses (pages 42-46).

So, if we doubled Bangalore’s bus fleet (which you can for the cost of the flyover) it would not increase the traffic on these roads by much but could replace almost all the private vehicle traffic not just on this stretch but all over the city (assuming people make the switch from private to public transport, and each bus carries 100 passengers).

Explanation & Calculations

Here’s how we can calculate that.

The proposed flyover will cost approximately 1800 crore rupees.

A TATA bus costs about 20 lakhs rupees.

So, you can buy about 7000 buses (and hire drivers/conductors for a year and build facilities for them) for 1800 crore rupees (or get 9000 buses without drivers/conductors or facilities).  I’m assuming that a quarter of the price of a bus will get you facilities and pay for the driver and conductor.

Now the BMTC runs around 7000 buses today.  So, for the price of the flyover, one could double the bus fleet.

We can show that doubling the fleet can drastically decrease the volume of traffic on these roads.

Let’s say that 10,000 vehicles used that stretch of the road.  We know that 2% of those vehicles were buses.  That’s 200 buses.  Let’s assume that all the other vehicles carry on average 2 passengers.  So, except for the 200 buses, the remaining 10,000 – 200 vehicles carry 20,000 – 400 passengers.  If we double the buses, we have 200 more  buses.  Now each bus can easily carry about 100 passengers (50 seated and 50 standing).  So, that means we can carry 20,000 passengers just by adding 200 buses (doubling the bus count).  That is the entire carrying capacity of all the other vehicles on the road!

So with a negligible increase in traffic (from 2% of current traffic to 4%), we can accommodate all the passengers of the remainder of the traffic using that stretch of Bellary Road today.

More Benefits of Public Transport

But it’s not just that!

For the cost of the flyover, we’d have doubled buses all over Bangalore!

So, we’d have added an equivalent carrying capacity to all the private vehicles on all the roads in Bangalore for the cost of this flyover!

That’s what this BDA DPR tells us!

Environment Benefits of Public Transport

But that’s not all!

There are still more benefits!  Think of the reduction in pollution.  Replacing all those private vehicles with equivalent buses would reduce pollution by 95%.

Assumption

In the above calculations, I’ve assumed that everyone will give up private transport for public transport.

That won’t happen in real life unless you get the same convenience from public transport.

It could happen if, like with the metro, bus passengers are:

  1. assured of getting a bus from a known key location to a desired key destination every ten minutes or at a known precise time (with bus tracking) and
  2. assured the buses are not overcrowded (the pleasantness of the travel is comparable to the pleasantness of private transport).

If you can get that sort of predictability, and comfort, then for those travelling on those routes to work, it would make more sense to use public transport than to use private transport.

So, it may need a lot more than doubling buses (mere capacity matching) to assure convenience and ensure that people prefer public to private transport.  It would also need route planning, bus tracking and highly predictable key routes.

Other Proposals

There are many other proposals for reducing congestion along the North South Bellary Road.

Here’s one:  http://www.deccanherald.com/content/561722/rail-link-kia-less-rs.html

This article says that there is an operational railway line between Yalahanka and Channasandra, and this can be extended easily till the airport up North and Baiyappanahalli in the East, taking airport traffic off the Bellary Road.

Estimated cost: Rs. 150 crores.  And it’s a public transport proposal, so it takes a lot of cars off the roads.

Visit Aiaioo Labs
 

Mathematics of Religious Violence

Pulse_Vigil
Pulse Vigil in Minneapolis (courtesy of Wikipedia)

In this article, I attempt to study the mechanisms used by religions for the propagation of their beliefs and to establish that these mechanisms foster violence. Moreover, I show that over time, the tendency to violence in religions can only increase.

For the purpose of this article, I define a religion as a collection of religious fictions (a religious fiction being defined as a belief concerning a supernatural force).  I call such statements ‘fictions’ not because I assert the truth or falsehood of those statements, but because they tend to form part of semi-coherent narratives.

First, it will be necessary to understand the mechanism by which religions propagate themselves.

Like anything subject to the laws of evolution, religious memes compete to establish better defensive barriers and better incentives for promoters.

The mechanisms for their propagation have therefore evolved with time as can be seen through a study of ancient and modern religions.

The earliest mechanisms for growth probably involved incentives for individuals.

  1. Incentives for Individuals

Early religions seem to have been explanatory in nature, and their main function appears to have been that of explaining physical phenomena and how the world came into existence.

The earliest religions of almost all ancient civilizations – be they the Greek, the Indian, the Chinese, the Anasazi or the Maya – seem to have dealt with the question of how the world come into existence.

The mythology involved could have provided incentives for art, providing some story-tellers or bards with a means to earn a living, and hence spread through art.

As humanity developed the means to travel over larger distances, these stories would have spread.

The religions that would have been most likely to survive would have been the ones with the most powerful stories and the lengthiest narratives (which would have been more profitable for their storytellers).

With the advent of agriculture, as humans began to live in settlements with a high population density, a new mechanism for propagation would have become more effective.

  1. Incentives for Organizations

With static populations in highly populated areas like cities and towns, religions would have begin to market themselves through religious organizations that maintained places of worship or organized religious events. These would have helped them reach more people within a town or city, just like a store in a busy street corner or a fair in a fair ground sells more goods than a push cart vendor pushing his wares through the streets of a town.

Individual story-tellers would never have been able to generate a sufficient surplus to build similar edifices or organize large scale events.  So religions that could create organizations that could benefit from them – professional priests – would have become more successful.

Fictions such as “If you contribute V to do W at place X or before deity Y at time T, you will have a better chance of succeeding at Z” would have been used to induce people to pay money for a service.  The earnings from such service offerings would then have been used to maintain the organizations, set up edifices or organized events which would have served to further propagate the religion.

What is important to observe is that once religions evolved the ability to generate sufficient income to sustain a priesthood, they could grow exponentially, because the more priests they had, the more people they could convince of the truth of their religious fictions.  And the more people they convinced, the more they would earn from the consumers, and the more priests they could pay for.  This cycle would repeat with increasing rates of growth and the largest religion in any location would grow into a monopoly.

The tendency for the larger organization to win (network effects) could provide such religions with a defensive barrier against new religions.

There is evidence of such defensive barriers in history.  Religions like Buddhism could only propagate themselves to places where no previous organized religions existed.  And in almost all places where  Buddhism took root, there were additions to make the Buddha a deity.  The deification would allow priests to say something like: “If you contribute V to do W before this image of the Buddha, you will gain merit and have a better chance of succeeding at Z”.

Buddhism couldn’t take permanent root in India because the Hindu religion with which it was in competition had at all times a larger organization and many more followers.

Challengers to existing organization-backed religions invariably required political support from the top namely the direct support of the king.  Examples include the support of the Egyptian Pharaoh Akhenaten to the monotheistic cult of the Aten in Egypt, the support of the Mauryan Emperor Ashoka in the case of Buddhism in India and the support of the Roman Emperor Constantine the First in the case of Christianity in Europe.

So, eventually, all religions in the world where people lived urban lives and were connected by trade routes came to rely on organizations of priests for their continued existence and for their growth.

And these religions, once they became dominant in any part of the world, became very difficult to displace.

But then there developed a class of religions which could displace religions that relied on priestly orders alone.

These were religions that in addition to wielding priestly orders of their own, propagated themselves through symbiotic relations with political powers.

  1. Propagation through symbiotic relations with political powers

The class of religions that could replace those that developed large organizations were those that could persuade political forces to assist in their propagation through military force.

Such religions would have had to be of service to political groups.

The symbiosis between a religion and a political force would have therefore depended on that religion’s ability to provide definite advantages to political leaders in furthering their political ends.

Political power is typically increased through war between political entities.

The number of soldiers that can be raised for war would be dependent on:

  1. the degree to which such soldiers are not dissuaded by fear of injury or death,
  2. the rewards that may be gained by the soldiers from war spoils, and
  3. the motivation to make the effort in the service of a cause.

Religions that rely on this strategy for propagating themselves increase all the above incentives by a) helping people overcome the fear of death and fear of defeat, by b) sanctioning immoral actions in war and by c) providing people with an excuse to go to war (providing them something to fight for).

To do that, they would have had to take recourse to one or more of the following fictions:

  1. Religious fictions promising an after-life with benefits
  2. Religious fictions promising divine help in war
  3. Religious fictions permitting unethical behaviour in/after war
  4. Religious fictions that lead to the exclusion of other religious/political groups

Let’s examine each of these in turn:

Feature 1:  Religious fiction of a desirable after-life

The Norse religion promised Norsemen that death in war gave a Viking a ticket to Valhalla – the hall of the heroic dead.

In the Christian religion, there is a place where souls are believed to go if they’ve been good in their lifetimes,and it’s called Heaven.   Souls of religious martyrs are pictured as ending up there: “Also I saw the souls of those who had been beheaded for the testimony of Jesus and for the word of God …  They came to life and reigned with Christ for a thousand years.” (Bible, Revelation 20:4).  Some people also seem to interpret the verse “Whoever finds his life will lose it, and whoever loses his life for my sake will find it” (Bible, Matthew 10:39) as a promise of good things in the afterlife for someone who gives up his/her life for religious reasons.

In the religion of Islam, there is a concept of a paradise or Jannah (the garden of paradise). It might be possible to interpret the following “Did ye think that ye would enter Heaven without Allah testing those of you who fought hard (In His Cause) and remained steadfast?(Qur’an, sura 3 (Al-i-Imran), ayah 142) as a promise that fighting in the cause of Islam shall lead to benefits in the afterlife.  The hadiths also apparently consider Jihad to be one of the 8 doors to entering Jannah.

Such beliefs can have a huge effect on the decision making process of a person considering going to war for a religious cause or a political entity claiming to represent a religious cause.

The person would have two alternatives:

  1. Staying away from war and facing social disapproval.
  2. Going to war, risking dying or returning rich from plunder.

The first alternative would entail no risk of death, but there would be the pressure of disapproval from social circles (especially in societies with a strong concept of honor).  The second alternative would be very risky because the worst-case outcome would be death.

The second choice would therefore be a logical choice only if the rewards-to-risks ration were more palatable than the disapproval involved in the first choice.  The risks in the second choice (dying in war) would feel more acceptable if there were an enticement attached to the worst-case scenario (the enticement of heaven after death).

As a result, a religion which sanctioned or rewarded dying for a cause would be able to raise larger armies of soldiers for a political leader than a religion that didn’t.

The benefit to the religion would be support for propagation of the religion by the political leaders and their soldiers (who often join the fight just to propagate the religion).

Feature 2:  Religious fiction promising divine help in war and divine sanction for war crimes

Just as religious fictions promising a felicitous afterlife serve to bring more soldiers to the battlefield, religious fictions promising victory in war help to keep more soldiers on the battlefield (prevent them from abandoning the fight and running away).

This is because the more a soldier believed that their side would win, the lower would be their expectation of desertion by their buddies, and lower the chances that they themselves would desert.  Consequently an army of soldiers confident of winning would have a higher chance of really winning (all else being equal) and a lower chance of defeat and death.

The above effect has been explained mathematically using game theory in an earlier post on this blog.

Essentially, you can build a game theoretic canonical form representation of an army of 2 soldiers as shown below.

In a war, the benefits to each soldier can be modeled as a bi-matrix (normal-form game) as follows:

soldier 2 fights soldier 2 flees
soldier 1 fights 5, 5
–5, 0
soldier 1 flees 0, -5
0, 0
Normal form or payoff matrix of a 2-player, 2-strategy game

The first of the two numbers in the matrix represents the payoff to soldier 1.

The second of the two numbers in the matrix represents the payoff to soldier 2.

(The soldiers win something (represented by 5 points) if their army wins; they win nothing if their army loses; and they lose their life (represented by -5 points) if they do not flee and their army loses; we assume the army wins if both soldiers do not flee and loses if one or both flee).

If soldier 1 trusts soldier 2 not to flee the battlefield, the best strategy for soldier 1 is to stay and fight as well (since he will then get more benefits than if he flees).

If soldier 1 does not trust soldier 2 to stay on the battlefield (if he suspects that soldier 2 will run away), then the best strategy for soldier 1 is to run away himself (so that he does not remain on the battlefield and get killed).

So, this model shows that if two equal 2 man armies meet on a battlefield, the one whose soldiers trust each other more will win.

So, religions of a certain kind can supply two of the most important needs of a political leader keen on fighting a war – finding soldiers and keeping soldiers.

To do these, they need to have a good story of the afterlife, and they need to credibly promise victory in war.

An early Jewish holy book (carried forward into the Bible) called the book of the Judges contained stories of wars that were won as promised by god.  In the stories, the Jews are shown as losing wars when not true to their religion, and winning them when true.

In the case of Islam, something similar can be seen after the defeat of the Muslim army in the Battle of Uhud in 625 A.D.  After the loss, the prophet Muhammad is said to have explained the loss as follows: “Allah did indeed fulfil His promise to you when ye with His permission Were about to annihilate your enemy,-until ye flinched and fell to disputing about the order, and disobeyed it after He brought you in sight (of the booty) which ye covet. Among you are some that hanker after this world and some that desire the Hereafter. Then did He divert you from your foes in order to test you but He forgave you: For Allah is full of grace to those who believe.

Feature 3:  Religious fictions permitting unethical behaviour in/after war

One other feature of certain religions that could have helped political leaders was religious sanction for crimes that would otherwise not receive social sanction.  There are examples of horrific massacres (justified through the premise of permission from the divine).

In the bible is a story of a Jewish prophet by the name of Moses requesting the Jews not to spare anyone from a community of people called the Midianites (that had attempted to involve the Jews in their religious practices) after they had been defeated.  Moses says: “Now therefore kill every male among the little ones, and kill every woman that hath known man by lying with him. But all the women children, that have not known a man by lying with him, keep alive for yourselves” (Bible, Numbers 31:17-18).

Muhammad is also reported to have participated in a massacre of a Jewish tribe (the Banu Qurayza) living in Medina after the successful defense of Medina by his army.  Ibn Ishaq, a Muslim historian writes: “Then they surrendered, and the Apostle confined them in Medina in the quarter of d. al-Harith, a woman of B. al-Najjar. Then the Apostle went out to the market of Medina (which is still its market today) and dug trenches in it. Then he sent for them and struck off their heads in those trenches as they were brought out to him in batches. Among them was the enemy of Allah Huyayy b. Akhtab and Ka`b b. Asad their chief. There were 600 or 700 in all, though some put the figure as high as 800 or 900.”  (After that, the Jewish women and children were divided up among the Muslims that had participated in the siege, and Muhammad himself selected one of the women, Rayhana, for himself).

In the Indian epic, The Marabharata, the deity Krishna repeatedly sanctions the killing through treachery of his enemies, ensuring the victory of the political leaders he is aligned with, though in the process violating all the rules of war and justice.

In all these cases, a religion enabled a political force to breach ethical norms and overcome natural human tendencies to forgiveness and compassion in its pursuit of political benefits – such as the complete elimination of an enemy, control over their lands and resources, and sex slaves as rewards for soldiers (in the Jewish and Muslim stories), and the winning of a kingdom through dishonest means (in the Hindu story).

These are not just fictions from a distant past.  The same fictions permit organizations like ISIS to act in a manner that would not be considered human in the present day.

Feature 4:  Exclusion of other religious/political groups

Feature 4 is the most troubling of all.  It appears that extreme religious views benefit a political associate of a religion more than moderate religious views.

That’s because more inclusive views in times of peace would not allow a quarrel to develop with neighboring communities and give the political forces an opportunity to start a war and consequently obtain wealth/domination from a victory.

So, more inclusive religious fictions would not generate the conflict required for expansion at the cost of other communities, the plundering of their lands or the rape of their women.

Less inclusive religious fictions could, on the other hand, if accompanied by military success, lead a group to dominance over more inclusive groups.

Without the frictions caused by less inclusive religious beliefs, military dominance would not translate into war and expansion.

An example can be seen in the case of the house of Saud.  Ibn Saud was the first king and founder of the third Saudi Arab kingdom (modern Saudi Arabia).

He positioned himself as the promoter of the teachings of a cleric – Muhammad ibn Abd al-Wahhab – who rejected the veneration of Muslim saints and their tombs.

So, Ibn Saud’s opponents in the Rashidi tribe of Arabia, who held a less strict view of Islam, would not have had any quarrel with Ibn Saud’s followers, and so would not have felt a need to muster in large enough numbers to make war on Ibn Saud.

On the other hand, since Ibn Saud’s followers would not have accepted the Rashidi tribe’s religious views, they would have felt it their religious duty to muster in large numbers to fight for their religion and punish the Rashidis for their sins.

History shows that this is precisely what happened and that Ibn Saud and his followers gained the upper hand in Saudi Arabia (and their extreme views became the norm there).

Subsequent events have shown that more and more extreme religious fictions have been used by political forces (the Taliban and then ISIS) to successfully displace less extreme religious fictions in their geographic area.

In India too, a similar process can be observed in Hinduism.  Different groups of adherents of Hinduism might hold one of the two possible attitudes towards cow slaughter.

One group might believe “It’s up to individuals to decide if they should or should not eat beef” while a second group might believe “Cows should be protected and shouldn’t be eaten”.

The first group would have no quarrel with the second (people who protect cows aren’t doing anything that goes against their more inclusive beliefs) and so would not be able to motivate its followers to engage in violence against the second group.

The second group on the other hand would have a serious quarrel with the some members of the first (some members of the first group might be doing something that they were bent on preventing) and so would be able to motivate violent opposition to the first group, especially if some of the members of the first group consumed the meat of cows.

As a result of the imbalance in motivation levels, and consequently, the imbalance in the number of people each group could mobilize to spend effort, wealth in its cause, eventually the second group would be expected to gain the upper hand (it would attain its objectives of preventing cow slaughter).

Let’s take another example, this time to do with Christianity.

Let’s say there is one group of Christians who believe that the most important religious fictions in the bible include: “Love your neighbour as yourself” and “If someone should smite you on one cheek, turn to him the other also.”

Let’s say there is a second group that believes that the most important religious fictions in the bible were: “No one comes to the Father but through the Son” and “Go ye to all the world and preach my gospel to every people”.

The first group of people would not have a quarrel with their neighbours on account of their beliefs.  They would be able to coexist with people of other religious persuasions.

As a result, they would never spread their way of thinking by forcing an extraneous group of people to come around to thinking their way or by subjugating those groups of people around who disagreed with them.

However, the second group of people would find it easier to find themselves in conflict with people around them possessed of different viewpoints, and would possibly change them or subjugate them (as happened with indigenous communities in the new world).

So, the imbalance in motivations gives rise to a tendency in all religions (that propagate themselves by association with political power) to shift towards more extreme views.

There is evidence of such a shift in the rise of ISIS and its symbiotic relationship with Wahhabism in the middle east.

There is evidence of such a shift in the rise of the fortunes of the BJP and its symbiotic relationship with monastic Hindu organizations and popular gurus who profess or excuse extreme views (Baba Ramdev for instance).

One might argue that there is evidence of such a shift in the rise of Trump and his symbiotic relationship with Tea Party conservatives.

Measurement

Can we measure the degree of extremism of a dominant group’s religious fictions?  It appears that we might be able to do so.

We have no studies for this, but it is possible that one measure of the extremism of the religious fictions dominating in a geographical area is the number (as a fraction of the population) of members of minority religions who succeed in living in those areas.

As the favoured religious fictions of a dominant religion X become more and more extreme, they should lead (by the mechanisms listed above) to the elimination of more and more people of other religions from those areas.

So, in Gujarat, the reduction of the number of people professing Islam and other religions in Hindu-dominated localities of Ahmedabad might serve as a measure of the increase in extremeness of views of people of the majority faith in those localities.

Similarly, in parts of Kashmir where the majority religion is Islam, and in Muslim majority countries  such as Pakistan or Bangladesh, the very small populations of non-Muslim minorities remaining (and the expulsion or intimidation of the remnants) might provide a measure of the extremeness of the views of Islam (and their further reduction might possible be a signal of the slow demise of the more moderate and inclusive Sufi views that were once possibly more popular there).

Conclusion

I wanted to say that we have argued above that in order to displace older organizational religions, it becomes necessary for religions to propagate themselves violently through symbiotic relationships with amenable political players.

Moreover, we have argued that once a symbiotic pact with political entities is firmly in place, a pressure to move in the direction of more extreme (less inclusive) views results.

In other words, by the principles of natural selection, religions are forced to morph into more virulent / harmful / intolerant forms.

Similar to the way in which humans societies have developed in obedience to economic rules that force us to destroy competing animal species and our environment, religions too have developed in obedience to political and sociological rules that put pressure on them to morph into increasingly destructive entities that feed off the hatred and weaknesses of humanity.

 

About the author

The author is Cohan, a researcher at Aiaioo Labs with a keen interest in history, economics and of course, machine learning.

Sample Programs for Teaching Programming in Kannada

Yesterday, I was asked to explain Arduino concepts to a group of teachers from rural schools in Karnataka at a workshop.

So, I created a set of slides and a set of illustrative computer programs in Kannada.

I was really keen to hear what the teachers had to say because I had been extremely apprehensive about whether anyone would be able to type software in Kannada (the standard keyboards available in India are ASCII keyboards labelled with Roman letters).

So, at the beginning of the class, I asked the teachers whether they could type Kannada using ASCII keyboards.

They said that they could.  They said that they were used to typing using Nudi or Baraha software (that allows one to type Kannada using a Roman alphabet keyboard).

Since I didn’t have Nudi or Baraha installed, I showed them how Google’s Input Tools worked, and they liked them very much (those with laptops insisted that I install Google Input Tools for them after the lecture).

Apparently, all the teachers could type using a Roman keyboard.  They could also all speak some English.

But their level of comfort with English was low when it came to reading and comprehension.

This group of teachers said they found it much easier to read Kannada than English though they typed Kannada on a Latin keyboard.

And they said that for that reason (ease of reading and comprehension), programming tools in the Kannada language would be useful to them.

Acknowledgements: The workshop yesterday was organized by Workbench Projects.  There had been a similar workshop at ArtScienceBLR on March 29th.  So, anyone wishing to learn to program Arduino boards in Kannada can contact either of these organizations.

You can download and explore the Indian language tools from here http://www.aiaioo.com/arduino_in_local_languages/download and the commands are listed here http://www.aiaioo.com/arduino_in_local_languages/index.php.

Below are screenshots of some of the programs:

  1.  Storing an Integer in Memory and Reading it Back

kannada_program_storing

2.  Adding Two Integers

kannada_program_adding.png

3.  Dividing Two Real Numbers

kannada_program_diving.png

4.  Logical Operations

kannada_program_comparing.png

5.  Conditional Transfer of Control

kannada_program_if.png

6.  Repetition

For Loop

kannada_program_for.png

While Loop

kannada_program_while.png

7.  Electronics

kannada_program_electronics.png

Visit Aiaioo Labs

Programming in Hindi and Tamil in addition to Kannada

For children who are taught computer science in Indian languages, conventional software programming can pose a challenge because most programming languages use the Roman alphabet.

We’ve created a way to allow students and teachers to write Arduino programs in Indian languages (at the request of Arduino India).

Arduino boards can now be programmed in Hindi and Tamil in addition to Kannada (as already described in an earlier post).

The Indian language extensions can be downloaded from our website.

These are the words used as replacements for English words: http://www.aiaioo.com/arduino_in_local_languages/

The website allows one to comment on and discuss the keywords picked as replacements for English words.

There’s still a lot of work to be done on the choices.

Very specifically, we’re looking for ways to simplify the words so that school children will find them easier to remember and type.

Any ideas for facilitating the learning process for children would be very welcome.

Illustrative Example

For example, we used to translate analogWrite as “ಅನಂಕೀಯವಾಗಿ_ಬರೆ” in Kannada, (“अनंकीय_लिखो” in Hindi and “அனலாக்_எழுது” in Tamil) using the coined word ‘anankiiya’ (negation of ‘ankiiya’ meaning digital) or the transliteration of ‘analog’.

However, during a discussion, a physicist who helped with the Kannada (thank you, Padmalekha) suggested that we use the phrase “write without spaces” for analogWrite.

And then it hit us that we could just use the phrase “write value” for analogWrite and “write number” for digitalWrite.

The following translations for analogWrite: “ಮೌಲ್ಯವನ್ನು_ಬರೆ“, “मूल्य_लिखो” and “மதிப்பை_எழுது” are much more intuitive.

The new translations for digitalWrite are also just as easy to comprehend: “ಅಂಕೆಯನ್ನು_ಬರೆ“, “अंक_लिखो” and “எண்ணை_எழுது

The process of simplification is an ongoing one, and we hope in a few months’ time to have a generally agreed-upon set of translations, after taking everyone’s inputs into consideration.

Syntax

The Arduino IDE with extensions now supports syntax highlighting in Indian languages. This makes it easier to program in the local language.

This is how Kannada code looks:

Kannada Code

programming_kannada

And here is how it looks in Hindi and in Tamil.

Hindi Code

programming_hindi

Tamil Code

programming_tamil

Visit Aiaioo Labs

Cooking Robot for Indian Cuisine using a Sensor Network Architecture

We had designed a cooking robot not very long ago.  The design was prepared as a creative exercise and there are some kinks in it that need to be ironed out.  We will list the kinks at the end.

The robot essentially uses a sensor network to perform transfer and heat operations.  It can also dip and activate various tools – mixing tools, stirring tools, grinding tools, etc.

Another cool feature of the design is that all tools and operations are driven by a single immovable motor drive.

The cooking robot, if it is realized, should be able to prepare many types of Indian side dishes and cook rice.

One of the things that this robot can’t do is prepare rotis (but there is now an automatic roti maker available in the market that can do that).

In the blog post below, we describe the design of the robot and hereby put it in the public domain.

At the core of the design is the vessel.  This is the only part of the design (apart from various tools) which comes into contact with the food.

cooking_robot_1

The vessel has a handle that allows it to be easily ‘picked up’ by the robot, moved around, turned and released.

Various tools, for example, mixing tools, stirring tools, and beating tools can be fitted with similar handles (but with a drive shaft running within to provide a mechanical driving force to the tool tip).

The robot connects with the vessel through a vessel carrier.  The vessel carrier is just a square piece.  The diagram below shows the vessel carrier in three positions – open, locked and rotated through 45%.

cooking_robot_2

The purple shading denotes the handle of the vessel.  There are two concentric rings with slits (shown in grey) in the rectangular carrier.

When the carrier is open, the slits in the slit rings line up and the vessel handle can slide into the carrier.

When the carrier locks, the inner slit ring rotates around the handle shaft, so it cannot slide out of place.

The slits are now at 90 degrees to each other.  Whenever they are at 90 degrees with respect to each other, the handle cannot slide out.

If both rings rotate, the vessel rotates with them, as shown in the last of the three figures in the above diagram.

Any number of such vessel carriers can be allowed to run along a set of vertical and horizontal tracks as shown in the following figure.

cooking_robot_3

The tracks are called ‘vessel guides’ because the vessel holders can only run along these guides.

The track and the surface they are cut into form the front face of the cooking robot.

So, in this design, the robot operates entirely in 2 dimensions, in a vertical plane parallel to a kitchen wall.  This plane of operation was deliberately chosen to conserve kitchen room, and to allow for pouring operations.

To pour a fluid or mixture from one vessel to another, all that one has to do is position one vessel in a vertical track (N-S) above another vessel running in a horizontal track (E-W) and turn the higher vessel (the pouring vessel).  The pouring vessel rises to keep its lower edge at a steady height.  The receiving vessel adjusts its position horizontally to keep the lower edge of the pouring edge in line with its own center.

At the base of the front face are burners.  They can turn on to provide heating energy and a vessel can position itself at any height above these burners to heat or warm food.

For mixing operations, a vessel holder equipped with a mixing tool would position itself over the vessel whose contents need to be mixed, and the rotating shaft in the handle would be engaged to provide power to the mixing tool’s tip.

The basic ingredients (already washed, cut and ground) were meant to be stored in containers just above the front face so that the ingredients could be transferred to the vessels positioned below them in controlled quantities by suitable methods under the force of gravity.

Power Train

We also designed a power train for the system so that the entire robot would operate using just one base-mounted motor.

At the heart of the power train is a set of vertical and horizontal lifts that run along rails and are propelled by screws (drive bars).

The figure below shows the arrangement of vertical rails (black lines) and drive bars (red lines).

cooking_robot_4

Below is an illustration of the horizontal lifts (rails and drive shafts).

cooking_robot_5

These rails and screws drive lift boxes as shown below.

The lift boxes would run along only one set of rails and the lift boxes running along vertical rails would not interfere with lift boxes running along horizontal rails, as shown below.

cooking_robot_6

In this diagram, the lift boxes (drawn as dotted rectangles) are shown latching on to the vessel carriers using holding bolts.

The holding bolts can be withdrawn and relocked at will, allowing the vessel carriers to be transferred from one lift to another at points of intersection, and to allow horizontal lifts’ holding bolts to avoid colliding with vertical drive shafts.

Below is a rough schematic of the lift boxes.

cooking_robot_7

The holding bolts are shown in blue.

The grippers (shown in solid black) hold on to the guide rails to stop the lift or onto the drive shaft(s) to propel the lift up or down.

We originally meant the system to have two counter-rotating drive shafts to allow the lift box to change direction very rapidly or stop against the drive rail.

The yellow square represents the gear wheels that power the  tools (for mixing, stirring, etc).

The blue square are the holding bolts and they latch onto the vessel carriers through matching slots as shown below.

cooking_robot_8

We had designed a gearing mechanism to lock and unlock vessel handles using cams that transferred power from the drive shafts and gears to power the tools, but those detailed diagrams have been lost.

Feasibility

An industrial robotics startup in Bangalore who evaluated this design for feasibility pointed out some problems in the design:

  1. The vertical plane of operation of the robot. They pointed out that lifting heavy vessels was going to require a lot of power, and would run into other problems like friction, and that it is always much easier to operate in the horizontal plane.  They asked us to study food processor designs and come up with ways to transfer Indian food ingredients between vessels in the horizontal plane.
  2. Friction in many of the components could prove difficult to overcome, for instance in the vessel holder. The weight of the vessel and its ingredients might end up locking the split ring system and preventing it from turning, or it might end up jamming the holding shafts connecting the vessel holder and the lift.

So, it appears that a number of mechanical problems need to be solved before such a product could become a reality.

A device for carrying road traffic on the Bangalore metro

A few of us were wondering the other day if it might be possible to carry road vehicles on metro rails.

A car is a machine with wheels that operates on certain flat surfaces, namely roads.

cars

A metro train is also a machine on wheels, but it operates on railway tracks.

metro

Roads tend to be very crowded, but not so the rails.  Long stretches of railway tracks go unoccupied most of the time.

So, initially, we felt that if we could put cars on rails using a suitable adaptor, we could move some 4-wheeler traffic off the roads.

Such an adaptor, it turns out, is easy to build.

car_holder

A cage with a roof with eyelets that allow the cage to be lifted, and wheel chocks that immobilize the car will do the trick.

Such a cage makes the car easily transportable and allows it to be lifted onto railway carriages or inaccessible parking spaces (say on the roofs of buildings).

Advantages

We calculated that a typical metro coach could hold up to 8 cars (a coach is 22 metres in length while cars are usually less than 5 metres in length, and you can stack two car cages one on top of the other).

So, 20 coaches could hold 160 cars.

Assuming a metro train frequency of one every 5 minutes and 20 car coaches, you would have an hourly capacity of 1920 cars.

Typical peak road capacities are around 1700 cars per hour per lane.

Since many central Bangalore roads are single lane roads, this could effectively double the traffic capacity at the city center.

Disadvantages

However, the plan would be hard to justify for the following reasons.

Each metro coach can carry a maximum of 300 passengers (if they are packed 6 to a square metre).  So the ticket for a car would be that of 40 passengers during peak hours.  I doubt anyone would pay so much to travel by car on a metro train.

The second problem is that metro coaches are prohibitively expensive.  Metro coaches cost upwards of Rs. 8 crores each.

Finally, a metro transport system is designed to serve a high density of passengers.  Those 20 coaches would have been of far greater service to commuters if employed to carry 6000 people instead of 160 cars.

So, it would make sense to add car-carrying trailers only after all commuter demand has been met, and only if the cost of car-carrying trailers turns out to be far less than that of passenger coaches.

Using such cages for parking also seemed like an interesting idea, but I feel that the cost of such a system might again be prohibitive (it’s cheaper in India to use a valet).

Anyways, it was an interesting thought experiment.