Neuro Dynamic Programming Language (NDPL)- Computing Future

Neuro dynamic programming is a stochastic/mathematical/control theory concept. It is nothing to do with computer programming language. NDP addresses optimization problem.

Neuro dynamic programming is an another topic I have been very interested in and I have been expressing this vision that the next generation programming language is going to be based on this. It is going to be next paradigm in the computer programming language. The concepts has wide applications today in various discrete engineering fields from signal processing, packet switching, space exploration etc. It is going to be available for day-to-day application in near future.

I have to reproduce some of the detail documentation I wrote few year ago starting from the framework. The objective of this blog is to provide a high level (with out using any mathematical models) explanation of NDPL.

15-20 years ago, structural programming language like COBOL, PASCAL, C were popular, object oriented programming language like Small Talk just came up and it took significant time to gain and sustain momentum and today we use OO languages like Java. The OO concept was extended to the other widely used computer programming languages.

What is Neuro Dynamic Programming?
I would like to have a separate blog on what is NDP. But I will let you know how I got exposed to this concept. I have been trying to solve stochastic problems using Markov Decision process and explored more on unsupervised learning problems like Robotics path finding using reinforcement learning (It is a solution not a problem), Q learning, MaX Q, NDP, etc.

What is Neuro Dynamic Programming Language?

It is computer programming language combines the concepts of object orientation, Ontology, and NDP. Ontology is a presentation of knowledge. NDP is a way to seek optimal solution in a unsupervised dynamic environment. Object oriented concepts includes inheritance, polymorphisms, functional over loading etc.

Think about programming languages developed based on objects (like dealer objects, car objects) which has prior knowledge (ontology) and continue to learn using NDP. Let us say there is a car object with VIN 39AVN4821S4XY23. Develop this object using NDPL once, and it will always contain the latest information about that car and anyone using that car object (DMV, insurance, re marketing web sites, etc) will get the latest information..

Cool huh!! more to come..

Developing this concept, writing the programming language constructs and designing a programming language can easily end up a Ph.d Thesis..

Cricket Match #4 (Season 2008) against Cougars

Pre-game Planning:

Probabilistically speaking, for Detroit falcons, the game result against cougars does not matter in the 2008 pre-season. Cougars lost enough games in the first round and are not really the serious contender for the next round. The teams which moves to the second round carries over the points based on the wins against who moves to the second round along with them.

Falcons game plan architects decided to exploit more experiments in this game. However, some of the Falcons players are intensively involved in the DFL (Detroit Fantasy League) ranking and wants to play all the games and score, pick wickets and catches as much as possible.

Srikanth (our captain) was not fully fit. He did not miss a game in last 5 years and want to improve the record further. He decided to play to maintain the records.

Our back up wicket keeper Bharath is also sick. The third wicket keeping option for Detroit Falcons is the one of best out fielder Detroit Falcons has, Sai. It is going to be the first match in 2008 for Sai to keep. We also wanted the new recruit (Piyush Khanna) to play in this match and few secrete weapons ( I can’t name them because they are real secrete weapons for Detroit Falcons)

It ended up a good mix instead of fully exploiting with lots of experiments in this game.

Toss won by Cougars and decided to bat first.

Falcon’s Bowling:

As usual, Falcons started aggressively. Got quick wickets. Bowlers were not disciplined in this match. Very disappointing. Our bowler gave at least 18 wides. When they were not bowling wides, they bowled their best deliveries. Few great catches from Raj, Srini and a spectacular catch from our wicket keeper Sai. It appeared as a difficult catch for Sai. It must be really really hard catch since he simplifies all difficult catches. Hari made few great stops.

I must call out our captain and vice captain in this match. First our captain, it was an easy run outs and he decided to do the run out like “Rajinikanth”. That is, give rest to one hand when you can do it easily with two hands. Even adapting that style, he rarely misses a catch or run outs. However, he missed continuously two chances in two matches. (a catch in the last match and this run out in this match). Our vice captain, I do not want to elaborate, we can not go to semi finals if we do not make those catches. (Falcons made to the qtr finals continuously in last 5 years). It is as simple as that guys.

Cougars were bundled for 46 runs.

Falcon’s Batting:

Matta who is the topper in the DFL wants to continue his top ranking. He jumped on to the opening slot and want to grab the most runs possible from the small target. He hit the ball all over. I mean all over. The two huge sixes, man oh man!, those were really huge. For lack of better words, those were Afridi sixes. You know what I mean. Those were marvelous sixes and you can not generally see those sixes with out paying a significant price for a game ticket.

Sai, when he is in the form, he hits the t-ball like tennis ball. He started hitting it like tennis ball. I think, he was intimidated by Matta’s six and want to hit longer one. He hit it with lots of power and I think he underestimated the rise. Ball was traveling both in height and distance. Ravish from cougar took a well judged catch at deep mid wicket, one or two yards before the boundary line. By losing 2 wicket, Falcons reached the target in 6 or 7 overs.

It was a good easy win for Detroit Falcons and real challenge is waiting for us against Indus next week.

Enterprise Architecture – A practical framework

Enterprise Architecture:

There are lots of framework starting from Zachman to TOGAF. Each of those has pros and cons. In my opinion, all existing frameworks have lots of practical difficulties. I propose the following simple framework which is simple and easy to implement. Enterprise Architecture does have ROI. (In case if any one from Gartner reading my blog, Please read one more time, EA does have return on investment)

The objective of the enterprise architecture is to provide a holistic view of the organization and use it as a tool to drive the organization to the expected future state. Any organization can be presented as the collection of 6 segments. The six segments are business processes, application/systems, infrastructure, information, organization and finance. If these 6 segments are documented and linked to each other respectively, then a holistic view of the organization, that is, enterprise architecture will be created. The focus should be given only to the core business processes.

Core business processes is defined as a set of processes that are directly aligned to value proposition of the organization. The core business processes varies based upon the organization, its product offering, its market segment.