WE ARE LIVING IN
AYELLOW SUBMARINE..._
(scientific-romantic novella)
by John D. Kettelle & Igor A. Ushakov
We, John and Igor, have had perhaps a unique experience of technical cooperation that predated the end of the Cold War. This is a story about how those common interests have continued, with the hope that it can motivate and encourage more such shared work among countries (and corporations).
Initially, we planned to write something that was strictly technical. Now we ask that your forbearance for something more relaxed and personal. The mathematically inclined can go immediately to the description of the Kettelle algorithm in Appendix 1, and to its development in Appendix 2.
PART I.
John.
In 1958 the US, as part of its response to the USSR's development of ICBM's (intercontinental ballistic missiles), had started BMEWS, the Ballistic Missile Early Warning System. (BMEWS was a weird acronym, because it was pronounced like the English verb "bemuse", which means to get amusedly lost in thought.) Like any big system, BMEWS had a number of components, such as its power supply, the radar itself, and parts of the computer (in those days computers were still in their infancy) that was needed to analyze the radar data. My company (Kettelle & Wagner2) was given a contract to determine the optimal balance of investment (via redundancy) among these components. It happened to be that I had recently heard a lecture by Richard Bellman, on his then-new concept ^ of dynamic programming. It seemed to be a good approach to this problem. Although the BMEWS work was highly classified, we were, in 1962, allowed to publish a paper on optimal allocation of redundancy [1]. A brief description of my algorithm can be found in Appendix 1.
3
Igor.
In the beginning of 1960's., I had been working at one of top-secret Soviet Research and Development Institutes that designed a system for a remote control of ballistic intercontinental missiles with nuclear warheads. It was a hot time of the Cold War, when during Caribbean Crisis both John Kennedy, and Nikita Khrushchev narrowly avoided the World War III. Besides America and Western Europe, the Soviet missiles were also targeted on Chinese (the "best friends" of Soviets at the time).
I dealt with reliability and inventory problems that were new to me at the time, so I read a lot of papers on this subject. Once in the journal "Operations Research" I found a paper written by J.D. Kettelle "Least-Cost Allocation of Reliability Investment". I found that this paper gives an accurate solution of an the extremely complex problem with a clear and elegant algorithm. All our attempts to use Richard Bellman's dynamic programming [2] had been unsuccessful. In those days we did not use computers for solving engineering problems, and Bellman's method was too clumsy for a "hand-made" solving. It was too wordy to call the algorithm a "Modified Algorithm of Dynamic
2 Daniel H. Wagner (1925-1997), prominent specialist in Operations Research. ORSA (Operations Research Society of America) established The Daniel H. Wagner Prize for Excellence in Operations Research Practice
Programming", so I coined the new name "Kettelle's Algorithm".
I translated the paper and placed it in a papers ccollection of "Optimal Problems of Reliability" [3]. The title of the book sounds a bit stupid: I originally meant for it to be called "Opftimization Problems" but the editor of the Publishing House changed it to what seemed to him more understandable: "Optimal Problems". And it was, of course, an error on my part for not giving attention to the title when checking the proofs.
Since then in Russian reliability literature everybody has used the term "Kettelle's Algorithm". (As I discovered later, the algorithm has no such name in the country where it was invented!)
With time, computers came into engineering practice, and I decided to modify Kettelle's Algorithm to make programming easier. It was very simple and, honestly speaking, a rather minor modification [3], though it allowed a more convenient procedure, which I called the "Universal Generating Function" [4, 5]. This methodology got some intensive development and practical applications: my colleagues and friends from Israel Gregory Levitin and Anatoly Lisnianski with colleagues performed a really great job [6, 7, 8]. An exhaustive bibliography on the development of the Universal Generating Function can be found in [9].
Algorithm (Universal Generating Function) is
In 1989 I was invited to lecture at The George Washington University for a semester as a Distinguished Visiting Professor. The university sent out an invitation requesting my informal answer. After getting my positive response they intended to send an official contract, and, after I had signed it, they would send me an official offer to which I would have to respond with a written acceptance. I feared that such a back-and-forth bureaucratic correspondence will last until doomsday. So, I decided to fly to Washington and sign all papers immediately and instantaneously... My friend, who was a Scientific Assistant to the Academician-Secretary of the Soviet Academy of Sciences, helped me with my urgent business trip to America. He arranged a three-day-trip to Washington with no compensations for my travel and living expenses.
I came to Washington, D.C., where my old friend Robert Machol, whom many know by his excellent book [10], met and invited me to stay at his home. It was my salvation: I had no money at all!
The next day, I walked to the University, which was on the other side of "not too small" city. It was about 100 Fo and 100% humidity. I then understood that money was evil but their absence was even more evil! When I came back and Bob saw my wet jacket he was really furious that I did not tell him
A very brief description of my modification of Kettelle's presented in Appendix 2.
£
to
PART II.
Igor.
^ill^gton University
wasminston oc
Igor A. Ushakov
Distinguished Visiting Pkofrssor
School of Engineering and Applied Science Department of Operations Research Washington, DC 20052
office; (202)994 7519 home: (703) 528-0067
about my financial situation. He gave me a hundred bucks with words: you may return what you do not spend before you leave...
Could you imagine, how long I explained to my American colleagues that I would like to have an invitation for a year with a salary for half a year, because otherwise, I had no chance to take my wife with me. They had a difficult time understanding if a Soviet specialist went abroad for less than 9 months, why he could not bring his wife with him! I was forced to lecture them about some specifics of a woman physiology .
At last, I signed all papers, came back to Moscow and in two months flew back to America with my wife! By the way, there were no tickets going: Moscow - New York - Washington, so we were forced to make a funny long trip: Moscow - Shannon - Havana - Mexico City - San Francisco - New York -Washington! (Fortunately, I had an acquaintance at the Aeroflot office in Moscow!) Anyway, we finally made it to Washington right before the beginning of the academic year.
After the first semester, I was asked to stay to the end of academic year, and of course I happily accepted the proposal. Then I was surprised and flattered with another proposal to stay a year more..
At the end of the last year of my visit to Washington, I felt some discomfort in my heart: it was difficult for me to take the stairs up to my office on the second floor. I was forced to make two to three stops.
A surgeon at the University Hospital informed me that I needed an open heart surgery. Reading this you can see: it was quiet successful! Then I was advised by the surgeon to stay at least a year under his surveillance. I was in panic: to stay in the country with no money and no job? And once again my ^ friend Bob Machol came to my rescue.
to
It occurred that when I left Bob Machol's apartment after my previous visit to Washington, I took with me some preprints that I brought to the university to confirm my credentials (though nobody asked me about it them at all). I forgot about them too and they got left behind in the room where I stayed. Bob picked them up and found that one of them had a reference on the Kettelle's paper. He kept it and gave it later to his o.ng friend John Kettelle as a demonstration of his fame in the Soviet Union!
When Bob realized that I badly needed help, he called his friend and.
John.
I remember that one day my friend Bob Machol called and said that he had his Russian friend, Igor Ushakov, who was his guest, had left some of his papers with reference to my work. It was very intriguing..
I found that in Russia the algorithm I had invented bore my name!
Later, in about two years, Bob Machol called me and asked if I would like to meet the author of that paper about my algorithm. I was glad to do so, and that's how I met Igor. His contract with the George Washington University should have expired soon, so I offerred him a job at my company Ketron, Inc...
PART III.
John.
£
to
We shortly came up with the idea of forming the Ketron-Moscow Institute, with Igor as its Director. My objective was to involve talented Russian mathematicians and programmers in my company's
projects, and Igor's objective - I believe - was to help his former friends and colleagues to survive in extremely difficult situation in the former Soviet Union.
Igor.
I remember my very first day at Ketron, Inc. My office was next to the office of the President, John Kettelle. It was a beautiful office with a great view of Washington: on the horizon one can see Washington Cathedral.
He introduced me to all the staff. I started working. John had a fantastic plan: how to involve Russian programmers and applied mathematicians for performing some projects here, in America. I was so enthusiastic!
John's secretary, Janice, brought to me a lot of my papers, which I presented to KETRON Ketron, Inc, relating to work. Among them, I found several of her reports to FBI about my phone calls to Russian colleagues, my emails, etc. It was not a surprise for me: KGB or FBI - what is the difference?
Janice was a sweet girl, so I brought all those papers back to her and whispered: in the Soviet Union for such a mistake you should have been severely punished. But we will let this time slide. Since then, Janet became my good friend and assistant (and with my English I needed it badly).
Unfortunately, this job did not last too long. Though company went bankrupt (an interesting example of some of the hazards of capitalism), John helped me
to find a new job. He recommended me to one of his former employees, by then the Chief Scientist of MCI (the largest telecommunication company of the US).
So, with the help of John Kettelle, I once again survived in the United States.
PART IV.
Igor.
Though our mutual job was finished, our friendship became only stronger. John visited my home, I visited his home.
Once on Independence Day July 4th , we visited John's family and even participated in an impromptu "military parade": John gave each of us handmade toys in the form of rifles. (In the picture below: Slava Ushakov (my son), John Kettelle, and his neighbor (who was at the time a Counselor of the British Embassy).
Then I unexpectedly we met John at the reception of former patients of cardiologic surgery. It occurred that the same surgeon - Japanese with a tender, almost Russian name Alyona - had operated on both of us!
£
to
PART V.
John.
Igor had recently called and invited me to participate in the Gnedenko Forum. Boris Gnedenko is quite famous in the American mathematical community. I remember what an outstanding mathematician he was: we met when he came to visit Igor here in US.
I accepted Igor's invitation and looked forward to participating to the extent my old body would let me. In the meantime, Igor invited me to join him writing a paper about the so-called Kettelle algorithm, and I look forward to a positive result.
Igor has suggested that this story, with its remarkable element of cold-war collaboration, might be of interest beyond the narrow community of mathematicians interested in reliability. I hope he is right. At the end of the "cold war", we thought that there might be a way to plug the well-known mathematical talents of Russia into the fascinating mathematical problems that confront "western" (and indeed all the world's) corporations and governments. Unfortunately, my own preoccupations were intervened.
With the "hope that springs eternal from within the human breast3", I would love to return to that project. The present version of it could include:
• A compilation of the business and governmental problems shared by the US, Russia, and the rest of the world. I have been working on the US version of this, and within as little as a month I might have something to share with the Forum to "prime your own pump".
• A corresponding collection of mathematical (and operations research) ideas that might address these problems. On this side, there are two that I myself am having some fun with:
3 Line from Ernest Lawrence Thayer's classic poem "Casey at the Bat".
° Computerized Third Parties - a new way to negotiate. One application is international treaties, another is mergers and acquisitions, and a third is the private purchase of real estate.
° Efficient Industries. Most applied mathematics - particularly operations research - is financed by individual companies to help them compete and make more money. Beyond this, in the US there are laws against monopolies. Result: There has been embarrassingly little work on making an entire industry efficient. Logically, there should be some communist ideas, and ideas from other nations, on this topic.
I would love to be a part of an international effort along these lines.
Igor.
Several days ago, I called John Kettelle and suggested to join the Gnedenko Forum. He accepted my invitation, and moreover, we have decided to write together a paper on the Kettelle's Algorithm. .
I thought about an interesting coincidence: I am living now in San Diego, California, where John over 50 years ago began his Navy career as an officer on a submarine! Why was I thinking about it? Who knows. Maybe because I was sitting in a comfortable apartment and was listening to my beloved Beatles' song "Yellow submarine".
And I was thinking about how lucky we all are that at the terrible time of confrontation between the United Stated and the Soviet Union, no crazy man pressed the button to fire a nuclear missile!..
Appendix 1:
Description of the Kettelle Algorithm.
Assume that we consider a submarine that should perform some operation of duration t without visiting a base. Electronic equipment of the submarine is considered as a series connection of n functional units. If an operating unit has failed it is replaced by a spare one, and it is assumed that if there is an available unit of needed type, the equipment operates successfully. Since the volume of submarine's storage is limited, one may say optimization of the number of spares that delivers maximum reliability under restriction on the total size of the storage. For the sake of simplicity, let us assume that the total volume of spare units is equal to sum of the volume of all spares. (This assumption is made to avoid simultaneous solution of the problem of optimal packaging. If you wish, you may think in terms of the units' cost then the property of additivity will be held.) of
To formulate the problem in general terms, let us introduce the following notations:
£
to
n is the number of operating units of different types within the system, xk is the number of spare units of type k,
Rk(xk) is probability of successful operation of unit k during given period t if there are xk spare
units,
vk is a size of cell for storing of element of type k. (Under assumptions above, the total volume of xk spare units is equal to xk vk .)
One needs to find such vector X=(xi, x2, ...,x„) that maximize the probability of successful operation of the submarine electronic equipment during an operation of duration t..
In mathematical terms this problem is formulated as following :
max\ nRk(xk)l Xvkxk <cL
X U<k<n 1<k<n
where CLIMIT is limitation on the total volume for spares (the size of the storage). Let us demonstrate the algorithm on a simple example of a system of 4 units in series.
Step 1. For each operating unit, one writes for each number of spare units xk values of Rk(xk) and respective total volumes vk xk.
Table 1.
Number of spares 0 1 2 3
Probab. of failure free Ri(0) Ri(i) Ri(2) Ri(3)
Unit 1 operation
Total volume of spare 0 vi 2vi 3vi
units
Probab. of failure free R2(0) Ri(i) R2(2) R2(3)
Unit 2 operation
Total volume of spare 0 v2 2v2 3v2
units
Probab. of failure free R3(0) R3(i) R3(2) R3(3)
Unit 3 operation
Total volume of spare 0 v3 2v3 3v3
units
Probab. of failure free R4(0) R4(i) R4(2) R4(3)
Unit 4 operation
Total volume of spare 0 v4 2v4 3v4
units
Step 2a. "Combine" units 1 and 2 in the following way
Table 2.
£
to
Step 2b. "Combine" units 3 and 4 in the following way
Table 3.
Unit 3
Unit 4 0 i 2 3 ...
0 R3(0)R4(0) 0 R3(i)R4(0) v3 R3(2)R4(0) 2 v3 R3(3)R4(0) 3 v3 ...
i R3(0)R4(i) v4 R3(i)R4(i) v3+ v4 R3(2)R4(i) 2 v3+ v4 R3(3)R4(i) 3 v3+ v4 ...
2 R3(0)R4(2) 2v4 R3(i)R4(2) v3+2v4 R3(2)R4(2) 2 v3+2v4 R3(3)R4(2) 3 v3+2v4 ...
3 R3(0)R4(3) 3 v4 R3(i)R4(3) v3+3 v4 R3(2)R4(3) 2 v3+3v4 R3(3)R4(3) 3 v3+3 v4 ...
... ... ... ... ... ...
Step 3a. One takes all pairs {^1(x1)*^2(x2); v1x1+ v2x2} and orders them by the total volume increasing, then exclude all pairs that for the same or smaller probability have larger values of the total volume. In the result, one has a sequence of the type: R, V17}, R , V27 },...,{R ,7 ,Vj}...
Unit i
Unit 2 0 i 2 3 ...
0 Ri(0)R2(0) 0 Ri(i)R2(0) vi Ri(2)R2(0) 2 vi Ri(3)R2(0) 3 vi ...
i Ri(0)R2(i) v2 Ri(i)R2(i) vi+ v2 Ri(2)R2(i) 2 vi+ v2 Ri(3)R2(i) 3 vi+ v2 ...
2 Ri(0)R2(2) 2v2 Ri(i)R2(2) vi+2v2 Ri(2)R2(2) 2 vi+2v2 Ri(3)R2(2) 3 vi+2v2 ...
3 Ri(0)R2(3) 3 v2 Ri(i)R2(3) vi+3 v2 Ri(2)R2(3) 2 vi+3 v2 Ri(3)R2(3) 3 vi+3 v2 ...
... ... ... ... ...
£
to
This sequence is called dominating sequence. (As a matter of fact, it is a Pareto set.) Of course, by the number of this dominating sequence, one can easy find from Table 2 what kind of spare units have to
be chosen for any pair {R form:
Vj}. The results of this "combining" can be graphically presented in the
Step 3b. The same procedure is repeated for Table 3. One takes all pairs {R3(x3)*R4(x4); v3x3+ v4x4} and orders them by increasing values of probabilities, then chooses the dominating sequence:
R ,vf },{r27 vI },...,{Rj ,vf}...
Step 4. One constructs the final Table 4. Table 4.
First dominating sequence
Second 1 2 3 • • •
dominating sequence 1 RI RI v* + v/1 R2 Rf vI + Vi11 R33 Rf v/ + v1 •
2 R R2 Vl + VI R2 R2 vI + vI R3 R2 vI + vI •
3 RI R" v/ + v" Rl2 R3 vI + vI r3 R3 v3 + v" •
• • • • • • •
Step 5.
. The same procedure of ordering is performed now for the final Table 4. One takes all pairs R • RIV + V"}, {R1 • R'2,Vi' + V2n},{&2 • Rf ,V/ + V/7},...,^; • Rf ,Vj + V" },... and orders them
by increasing values of probabilities, then chooses the dominating sequence:
*i,V
{R *j , V *2,V *2},...,{R *, ,V *,}...
Solution. One finds such k that V*k <VLMn< V*k+1. By pair {R *k ,V *k }that represents the solution, one finds corresponding pairs {R7, V]'} and {Rn, Vj1}, which compose the solution. In turn, {Ri, V} helps to find initial pairs {Ri (xi), vi xi} and {R2 (x2), v2 x2}, i.e. one has found xi and x2 , as well as {Rj,V"}helps to find initial pairs {R3 (x3), v3 x3} and {R4(x4), v4 x4}, i.e. x3 and x4 has become known.
Appendix 2:
Modification of the Kettelle Algorithm by the Use of Universal Generating Function.
If you look more attentively at Kettelle's Algorithm, you find that you deal with a pairs of numbers with which you perform the following operation: values of R are multiplied and values of V are added. It immediately leads you to a thought that similar procedure is performing with the generating functions! Indeed, Table 2 or 3 are very convenient for handle-calculations, though for computer the following procedure is "more understandable" and workable. So, expression
^O f7 (x) = (R,(0) z0 + R,{1)zv + Rx (2) z2V1 +...) • (R2(0) z0 + R2(1) zv2 + R2(2) z2v +...)
¡^ in a sense, is equivalent to Table 2. However, using UGF, one can write immediately formula for series system of n different units:
fF7NAL(x) =n(Rj (0)z0 + Rj (1)zVj + Rj (2)z2Vj +...)
1< j<n
In contrast with usual procedure od polynomial multiplication, we avoid similar terms reducing. In other words, all terms with the same power of x are kept in their original form. And now we have the problem of "sifting" the terms of final polynomial fF7NAL(x) to get a dominating set as we did it for the Kettelle's Algorithm. Let us consider all terms of non-reduced final polynomial fFiNAL(x) into pairs of the "Kettelle's type". If somebody still feels inconvenience adding volumes, let us say about cost rather than volume (keeping the previous notations v and V).
Let us order the "Kettelle's pairs" by increasing value of the total cost of spare units, V:
[r1f7n,VXF7N] [rr.F7N,V2F7N} [r3f7n,V3F7N}...,[Rf7n,VF7NJ...
i.e. VFIN < V™for any j . Now, in this ordered set, one excludes those pairs, for whichRFIN < R™.
Thus, dominating sequence is constructed easily, though Kettelle's Algorithm gives the way how to find corresponding vectorXOPT = {x°FT,x°FT,...,x0FT}. However, using UGF we have completely lost the track of the solution: all intermediate sets of x's are lost!!
To avoid this, let us introduce the following artificial though useful terms and notations. Let us use ancient Roman military terminology: a legion is a division of a high level, a cohort is unified part of a legion (all cohort have the same structure), a maniple is a lowest unit of the army. Let us give these terms new contents. Let any "atomic" parameter of a unit be called a maniple (M). (Such parameters are unit reliability, its cost, its volume, the number of spares of given type, etc.) The complete set of such parameters characterizing a unit be called a cohort (C). In our case a cohort is presented by a triplet C,(k)= [M;1, Mj2, M;3], where M, is reliability of unit j under condition that there are k spares, i.e. R;(k); Mj2 is the total cost of k spares, i.e. kv,; and M, is the number of spares for this case, i.e. x;(k)]. Let us note that actually x,(k)=k, however, we use such a specific notation intentionally to keep track of actually used spare units.
A legion in our case is a set of cohorts, i.e. a set of all parameters of the series system. (Of course, system structure should not be necessarily series: we just preserve previous assumptions.) Thus, a
legion in formal notations can be presented in the form:
Lj=; ;... , ; .. .}=
={[R,(0), 0, x,(0)], [R,(1), v, x,(1)], [R,(2), 2v,, x, (2)], ... , [R,(k), kv;, x/k)]...}.
£
to
Now introduce an interaction of legions (denote this operation with a special sign ®LEG), and begin with interaction of two legions. Interaction of legions is an operation similar to a Descartes product: each cohort of the first legion interacts with each cohort of the second legion. Denote interaction of cohorts by ®COH. In other words, in the result of two legions interaction on gets a new "expanded" legion:
L *=L ®LEG L =
C ®COH C ^11 w 21'
C ®COH C C ®COH C 12 21 13 21
yCOH >)COH ■*COH
C ®COH C C ®COH C C ®COH C 11 22 12 22 13 22
C ® C C ®C C C ® C
^11 w 23' ^12 w 23' ^13 w 23'
C„ ®COH C
As one can see, actually it is just a different form of Table 4 given by John Kettelle in Appendix 1. There are new notations, new words but of course the same idea.
In the result of such interaction we get new cohorts. Now we can express the result of interaction of two cohorts
C,k ®COH Ca =[R;(k), kv,, x,(k)] ®COH [ Ri(l), v, x(l)] = [Rj(k) ®(R) Ri(l), kv, ®(V) lv,, x,(k) ®(X) x(l)] = [Rji*, V;*, /*],
i.e. in result of interaction of two cohorts, one gets a new cohort with interacting maniples of the same nature.
Each type of maniples interacts by its own rules. In the case under consideration, ®R is an "interaction of probabilities", i.e. ordinary multiplication, ®V is an "interaction of costs", i.e. ordinary addition, though ® X is an operator allowing to keep information about number of spare units of each
type. (At last, we effectively use notation xj(k) instead of just simple k , since subscript j shows to which unit these spares belong.)
As the result, we have
Obviously, such manipulation can be performed with arbitrary number of simultaneously interacted legions. With the procedure modified in described way, one has for any term of the final dominating sequence a set of needed spare units X = {xi,x2,...,xn} that corresponds to a chosen term of the
Universal Generating Function is convenient not only for optimal redundancy problems. allows simplifying analysis of multi-parametrical units. For instance, analyzing the capacity of a pipeline, consisting of series of connected parts, one can introduce interaction of type
Z* = z1 ®zzi ®Z ... ®Zzn = min { z1, zi, ..., zn}, as well as interaction of type
for parallel parts of the pipeline, i.e. one has a possibility in the frame of the same mathematical model consider systems with network structures.
For finding an accumulated error, it is possible sometimes use interaction of type
Rj,* = Rj(k) 0RR,(l) = Rj(k) xR,(/),
Vj,* = kvj 0V /v, = kvj + Iv t, xj* = xj(k) ®Xx(l) = {xj(k), xt(l)}.
sequence.
3
Y* = yi 0yy2 0y _ ®yyn = Zi + Z2 + ... + Z,
etc.
References:
1. J. D. Kettele, Jr. Least-coast allocation of reliability investment. Operations Research, vol. 10, 1962.
2. R. E. Bellman and S. E. Dreyfus. Dynamic programming and reliability of multicomponent devices. Operations Research, vol. 6, 1958.
3. I. Ushakov (ed.) Optimal Problems of Reliability. Collection of papers. Standards, 1968.
4. I.A. Ushakov. A universal generating function . Soviet Journal of Computer and Systems Sciences, vol.24, 1986.
5. I.A. Ushakov. Optimal standby problem and a universal generating function . Soviet Journal of Computer and Systems Sciences, vol.25, 1987.
6. G. Levitin and A. Lisnianski. A new approach to solving problems of multistate system reliability optimization. Quality and Reliability Engineering International, vol.47, 2001
7. G. Levitin, A. Lisnianski, H.Ben-Haim, and D.Elmakis. Redundancy optimization for seriesparallel multi-state systems. IEEE Transactions on Reliability vol. 47, 1998
8. G. Levitin. A universal generating function approach for analysis of multi-state systems with dependent elements. Reliability Engineering & System Safety, vol. 84, 2004.
9. G. Levitin, The Universal Generating Function in Reliability Analysis and Optimization. Springer, 2005.
10. H.H. Good and R.E. Machol. System Engineering: An Introduction to the Design of Large-Scale Systems. McGraw-Hill, N.Y., 1957.
^
to