PRACTICAL THINKING. — TECHNOLOGY USER. — SOME THOUGHTS REGARDING SMART COMPLEX SYSTEMS AND MATHEMATICS. ... [ Word count: 1.600 ~ 7 PAGES | Revised: 2018.9.18 ]
Was still busy last week.
Also was asked a question regarding the history of AI and why so much jumping around.
That is, why did AI research begin, then end suddenly. And then begin again, decades later, and then again end suddenly.
Meanwhile, besides answering that question, let's also really think about the relation of mathematics to the history of AI.
Lo! another discussion that became a post.
Word count: 1.600 ~ 7 PAGES | Revised: 2018.9.18
BUSINESS REQUIRES BUDGET
Was asked a question regarding the history of AI and why so much jumping around. That is, why did research begin, then end suddenly. And then begin again, decades later, and then again end suddenly.
It's like with deep learning. Selfridge et al were doing conferences on it in the 1950s. Then it was popular again in the 1980s. And then in 2012--2018.
Researchers are mostly professionals and follow the funding, Meanwhile funding depends on the current hobbyhorse of the funders. Otherwise the discretionary budget in most places is not enough to hire even one engineer. Only enough for two students to have free tuition and a stipend however.
That's one reason. But there's another reason. And that's the math.
Both Marvin Minsky and John Holland objected to the lack of formal methods for reasoning about complex systems. In general there are no shortcuts, as Wolfram showed, but abstracting out the irrelevant, there are often statistical shortcuts and approaches, such as those championed by Watanabe.
For example, I'm using tricks like Schwartz distributions to get useful models. But most engineers don't know about such things. Why would they? No, really; why would they? People seem to have gotten stuck for about a year, and then have issues with funding, and move in other directions.
Mathematics a huge rabbit hole. If not dedicating enough time to it, you just won't learn enough to make the time spent useful, and yet the time spent in it could be extended forever, and yet most tools of mathematics are not useful tools. Only some are useful. Yet to know which ones are useful or not requires maturity, having enough broad and deep knowledge of what is available and where things are going.
For example, suppose we have a typical construction from the 1970s. Agent loading up with goals from a buffer which it empties periodically, and equipped with some heuristics and operations/methods which it encapsulates. (This is even before Smalltalk, and probably inspired it.)
It doesn't have any specific output that's desired, but rather an output within the target class. So it has inputs in Class I. And it wants outputs in Class II. Not outside it. Which point in class II results doesn't really matter, all count as solutions. The target class can be varied by the user. Set as a parameter. Or changed by another process.
So a typical problem people were solving was similar to the iterative calculation of derivatives in finance.
O_n ( O_n-1 ( ... O_2 ( O_1 ( INPUT) ) ) ) and the program must for each O_i select one method from list L.
It must not take longer than time T to do this, or post an error.
Looking ahead and trying all combinations is not efficient. So for example, there's a Guard or list of heuristics that narrows down list L.
Some kind of backup or backtracking is possible. If at step O_i it looks like the input is less likely, given further operations remaining, to end up in Class II than what the input to O_i-1 was, it undoes the operation and tries again from a backup.
Like in finance, where the results of a previous step, which also yields an approximation, are used to select the next calculation procedure from a list, using the approximation in the last step as input, to get a better approximation, and the additional accuracy and precision gained is compared with the anticipated cost of each further procedure. But it's easier, because they can do things like discount distant future events and their effect increasingly much.
And later many agents of this type are added. And the question for practical purposes is then how to predict what they do in fact.
Without just knowing a lot of mathematical tricks from outside computer science, it becomes clear that useful prediction is very hard.
Even when one correct approach, such as floating marks and locking some operation until enough marks arrive in the right places to unlock it, is known in the 1960s. Or after tagging everything was invented in the 1990s.
Most mathematical tricks come down to knowing how to aggregate variables will losing only irrelevant information. (Constructing the appropriate algebraic structures.)
Then you get few variables and can reason about it productively.
BUDGET MEANS BUSINESS
I venture that the clean separation of science into fields that do not interact is harmful; but that is arises from budgetary considerations, and the need for clear rules for ordinary administrators regarding how to allocate funding. Mandelbrot wrote, I think in his autobiography, that it's hard to judge an interdisciplinary result. Watanabe, meanwhile, begins a book by pointing out that interdisciplinary results are often not the best organized so far as exposition, not respectful of established authorities, primarily because of the much broader scope in which authorities disappear, and probably in an era of strict professionalism is unwelcome [WAT69].
Most people simply cannot afford not to be professionals or operate strictly inside a discipline, even if solution of problems requires pragmatically using the results of several disciplines.
For example, I mentioned how converting infinite combinatorics DeWitt style into sums all possible weighted combinations of nilpotent operators can allow you, with the right encoding, to perform calculus on infinite combinatorics, easily maximizing or minimizing whatever we would like to maximize or minimize. Ordinary calculus makes max/min trivial in most cases; just that most cases do not fit easily into the framework of calculus.
They require representation which makes them fit.
Meanwhile Schwartz distributions allows you to make a namespace for functions: you have a function, and a list of tests, also functions, which are pairs of lists of numbers, and you get out a single list of numbers. That can now be plugged into functions and is easier to work with.
None of that is really generally taught in computer science. (Because it's properly a different field.)
So for example, turn each method that can be O_i into a list of numbers this way, taking as the test possible O_i-1 or O_i+1, and perform factor analysis, statistics, and see for the whole range of inputs if your combinations methods don't separate into piles that can correspond to "moving toward" the various classes. Consider combinations involving multiples tests. And so on. That can also be done by machines now on the fly. Meanwhile, the number of functions that must be combined with a given function for this to work gives you a measure of how processor intensive such a Guard (heuristic) this method is. And to get guaranteed results in Class II or an error no later than time T after a process begins, we can reason about the trade off between how good different heuristics/methods are and how much less likely their use makes guaranteeing a result in Class II or an error no later than time T. For example.
I'm a scientist who writes science fiction under various names.
◕ ‿‿ ◕ つ
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License . . . . . . . . . . . . . . . Text and images: ©tibra.