Future Challenges of Computer Studies

Future Challenges of Computer Studies
Table of content
- Abstract – – – – – – – – – – –
- Table of content- – – – – – – – – –
- Introduction- – – – – – – – – –
- Computer Architecture- – – – – – – –
- Computer Technology- – – – – – – – –
- Distributed, parallel and mobile computing- – – – – –
- Programming paradigms and user interface- – – – – –
- Theoretical computer science possibility; computational models- – –
- Dealing with uncertainty- – – – – – – – –
- Artificial Intelligent, robotic, Real-Time bounded rationality- – – –
- Theoretical Computer Science and feasibility; performance measures and complexity
- Conclusion- – – – – – – – – –
- Recommendations- – – – – – – – –
- References- – – – – – – – – –
Future Challenges of Computer Studies
Abstract
Challenges facing computer studies in the 21st century are presented. It is quite risky to foresee the long-term future and pose the correct list of problems for the science that is only 60 years old. Nevertheless it is very important to realize what has been achieved so far, and which problems are expected or is important to be solved in the near future. With this in mind, we present challenges facing computer studies in the future to include; technology, architecture, distributed and parallel computing, programming paradigms, computational models and complexity, models of uncertainty, and artificial intelligence. We also try to provide some sociological, economical and political context associated with achievement of those objectives in order to predict the future challenges. Teachers’ education should be giving utmost attention in terms of training and retraining of the teachers for contemporary suitability as the world of computing is evolving on daily basis. The method used in gathering the needed information for the study was book review method and web searching.
Introduction
From June 2006 to June 2010, the National Natural Science Foundation of China (NSFC) and the National Science Foundation of the United States (NSF) organized a series of academic exchanges among computer science community leaders of the two countries. The six-year academic exchanges were conducted through workshop presentations, stimulating discussions and debates, and site visits to universities, research institutes, and companies. The exchanges are fruitful. Computer scientists from the largest developed country and the largest developing country not only discussed research work of computing science and technology, but also exchanged their perspectives on future challenges to computer science research, education, human resources, ecosystem building, and impact to the human society Tu (2011)
Computer science itself is a somewhat misunderstood term most probably because of the word “computer”. Rather than being “the study of computers”, computer science can be briefly described as using computers and computational technology to solve problems; the main focus is in problem solving. According to Eberbach (2001) our imagination to purge correctly an enormously complex tree of possible scenarios will fail with a probability of almost 1, and nobody could do it correctly independently no matter how hard one could try (does a negligible probability of successful prediction warrant such an attempt to try at all?). Fortunately for us, the jury is out, and there will be nobody from the current audience who will be able to verify that our predictions were completely astray.
Future Challenges of Computer Studies
To make my predictions more credible, I will consider only a prefix of the New Millennium. I am a computer scientist, thus I will concentrate on challenges facing the branch of applied mathematics dealing with theory of automatic computation and computing machines, otherwise known as computer science. Computer science compared to mathematics is very young and changing so rapidly, that any predictions longer than say, 10-20 years, will not be credible. Nevertheless, I will take an intermediate approach between 10 and 1000, and I will concentrate the remaining challenges (and promises) face computer science will be discussed in the next more “technical” section. From the long list of challenges I will concentrate only on a few. Overview of challenges that will face computer science studies are;
Emerging Computer Technologies
Currently the market is dominated b the VLSI semiconductor or technology. However, new emerging technologies appear: optical, biomolecular, and quantum. The question is which of those technologies will dominate the market in the 21st century? Perhaps none of them, or the merger or coexistence of several ones? In the never-ending quest for speed and effectiveness, we need always faster and cheaper computing devices.
A few times already was forecasted that we were approaching the limits of VLSI technology. It was written many times that circuit speed cannot be increased indefinitely. It was stated that the speed of light is a major problem for designers of high-end computers, and heat dissipation is another challenge. However, in spite of that Intel just announced breaking TGI-{z barrier in a standard VLSI microprocessor, whereas a few years ago even Seymour Cray, the founder of supercomputing, has struggled in his CRAY-4 project with a similar frequency.
Were those alarms wrong, i.e., are we still squeezing the maximum from existing technologies and we did not yet reach the plateau? Optical technology based on photons operates in higher Frequency spectrum of electromagnetic waves than electric current in VLSI transistors. Because its higher speed and cost-effectiveness optical technology is used successfully in fiber optics a communication cables and CD-RQMs. However, in spite of building optical neurocomputper prototype computers, holographic memories, we do not have commercial optical computers. Perhaps, because it is not clear, whether optical computers should be discrete or continuous, there is a lack of appropriate theory for continuous devices in a way similar as Boolean algebra allowed to construct present-day digital computers.
Biomolecular, and in particular. DNA-based computing is another promising technology, Scientists showed how using Adlernan’s method to solve NP-complete problems, how to do arithmetic, or simulate finite state machines. DNA-based computing has been proven to be computationally Turing universal, and because of its miniaturization and natural superparallism, it can be useful at least in the solution of search problems. However, all the experiments were on the level of the test tube So far, and nobody built a biomolecular computer, or even biochip yet.
Even more spectacular and promising seems to be quantum technology, the natural extension classical computing to the processing at the atomic scale using individual atoms, molecules or protons. If current trends continue, by the year 2020 it is expected that basic computing elements will be on the level of individual atoms, At such scales, the current model of computation, Known as the Universal Turing Machine, will he simply invalid.
The problem is that very few (if any at all) understand quantum physics well. Even Einstein had reservations against it. Breaking supposedly “unbreakable” codes teleportation, teleportation, of true random numbers is based on quantum superposition principle that photon. atom or electron can simultaneously be in many states. However, the attempt to “read” those states always finds a quantum element in one specific state.
Computer Architectures
Jahre (2008) Computer architecture developments have made an overwhelming progress within the last five decades driven by technology advances that are well approximated by Moore’s law of doubling the density of transistors on a chip every 18–24 months. These advances allowed to develop high-performance PCs and workstations based on microprocessors to the point of current multi-core based PCs, servers, and embedded devices.
Today computers are still based on the 50 year old von Neumann architecture model. There are cosmetic changes, added caches, pipelining, increased clock speed, superscalar execution, and so on. but under the hood we find still time same old model. The attempt to build, so called, non-von Neumann architectures were at most partially successful, and they did not lead to a similarly widely accepted model for parallel computation like von Neumann architecture provided for sequential ones.
Future Challenges of Computer Studies
Only now, we recognize power and ingenuity of von Neumann, when nobody was able to propose a similarly clean and pragmatic model for new computer architectures. Thus an establishment of such a model, I see as the most important challenge facing computer architecture. Perhaps, the part of the problem is that a single model is impossible to derive for Parallel architecture (e.g., shared memory PRAM versus private-memories MP-RAM models, or putting in other words: if parallel architectures then by definition several models have to parallel), but nobody proved or disproved it. we saw a battle between RISC and CISC camps, which was firstly won by RISC, LZSC architectures became more complex. CISC overtook many of its features, and now it
look like we see a merger of RISC and CISC (or hybrid) architectures.
5th Generation Project in Japan. Europe, and USA brought a lot of ambitious non-von Neumann architecture designs, from which very few (if any) survived. Reduction and data-flow computer, attempting to eliminate the von Neumann bottleneck, and increase speed of computer out to be inefficient and they were merged with classical control-flow computers. cellular computers had the peak with CM-1 and CM-2 massively parallel architectures, but thinking Machines Corporation building Connection Machines ceased to exist. Logic computer together with logic paradigm were blamed for disappointing commercial results of the Fifth generation Project in Japan. Even actor computers, despite enormous, deserved or not, current popularity of everything what can be called object-oriented, have not been accepted.
The part of the blame is that we do not have a good classification scheme for computer architectures, and without such a clear picture it is very difficult o make or to report any substantial progress. the most popular Flynn’s SISD, SIMD, MISD. MIMD classification put to the same class completely different architectures, and additionally one of the classes is believed to be empty. More detailed Kuck’s classification has not been accepted, and two classification by Treleaven are used mostly by the specialists in the area. It seems that currently the battle was won by the old control-flow architectures with some added support for limited parallelism. The claim that computer architectures should reflect heterogeneity and minimize the corresponding gap between high-level languages and corresponding architectures, so far has been ignored by industry.
Future Challenges of Computer Studies
Distributed, Parallel and Mobile Computing
According to Massari, Zanella and Fornaciari (2016), in recent years early studies began to explore the idea of implementing the distributed computing paradigm in systems based on mobile devices. The approaches and depicted scenarios are however quite different from each other. The wireless network improvements lead researchers to create distributed systems that cooperate in computational- intensive tasks and to coin some paradigms. For example, in the opportunistic computing paradigm mobile devices are connected in an ad-hoc local wireless network to take advantage of the computing resources of other devices. The most recent proposal in this direction is the Any Run Computing (ARC) system, which dynamically selects the best device for offloading the execution of tasks.
Since 1960s various models and systems for parallel and distributed computing have been designed and built. This includes first Wide Area Network ARPANET, first parallel architectures IILIAC-4 and CDC6600, Petri nets model for parallel computation, Dijkstras semaphores, Algol 68 language with cobegin/coend parallel blocks, and Simtia language with support for corounes. In spite of so relatively early start. the basic theory of concurrency it-calculus [6, 8] is known only by specialists, the majority of programming languages is sequential, and parallel architectures have fewer processors than they used to have 10 years ago. Additionally, not verv body (including computer scientists) is convinced that not all parallel processes are serialzable and that parallel processing is more expressive than sequential processing. The arguments for are generated by nonserializable database transactions, nonserializable interactive parallel recesses in it-calculus and Interaction Machines. Against is very powerful and old first Church Roser theorem from functional programmiug/calculus.
Future Challenges of Computer Studies
Programming Paradigms and User Interfaces
A Programming Paradigm is the silent intelligence in any software design samnuel (2017). We can distinguish at least seven programming paradigms : procedural, object-oriented, functional applicative, functional single-assignment, logic, rule-based and semantic networks languages. From those – procedural, object-oriented, functional, and logic paradigms form the core. This classification is about high-level languages. Very rarely, it is applicable to assembly languages and machine languages .
Assembly and machine languages tend to be uniformly procedural. Historically procedural languages dominated. Because of their side effects, von Neumann’s bottleneck attributed to the assignment construct, too complicated and nonhomogeneous syntax, they have been attempted to be substituted firstly with functional languages (without success), next with logic languages (blamed for at least controversial results of the Fifth Generation project), and currently with object-oriented languages. Will the object-oriented paradigm be the next blind path leading nowhere, or is it really tile promise for the universal paradigm to program everything and everywhere? And this I see as the most important challenge in programming paradigm area to solve during a few next years.
What is nice is that object-oriented approach allows easily to “encapsulate” other programming paradigms. and leads to hybrid o-o procedural, o-o functional, and o-o logic languages. It also provides a nice support for the development of graphical user interfaces, and it is claimed to be an appropriate implementation tool for interactive parallel programming. However, most likely, object-oriented programming will be wiped out in the 21st century, or at best will merge with new or existing programming paradigms
Theoretical Computer Science and Feasibility: Performance Measures and Complexity
Computational models deal what is possible to solve using computers disregarding that perhaps problems to solve are beyond practical limits of time or memory. On the other hand, performance measures, and in particular. complexity theory, try to answer what is feasible to solve on computers. Some problems that are solvable are nonetheless so difficult that they are called intractable. These intractable problems cannot be solved efficiently by any current computer. However, they can he solved either approximately, or providing solutions working almost all the time. or at least for larger instance size using approximate, heuristic, probabilistic, randomized, parallel, or interactive algorithms. 1n particular; new emerging paradigms like DNA-based computing and quantum computing are based on “hyperparallelism” or “quantum parallel superposition”.
Most commonly the performance measures use asymptotic time or space complexities. Many scientists believe that beside to be very crude approximation compared o the real time, amid the design and fixation on the worst case, eliminates very often algorithms with exponential worst- case bounds but efficient in practice (see e.g.. rho history of the Godel Prize paper facing such a fate by rejection in many journals, including JACM. to be finally accepted after ii years.
Future Challenges of Computer Studies
Dealing with Uncertainty
Automation of decision-making process is one of the most important goals of computer science. Recently, there has been a shift from consideration of optimal decisions in games to a consideration of optimal decision-making programs for dynamic. inaccessible, complex environments such as the real world. Perfect rationality is impossible in these environments, because of prohibiting deliberation complexity. To be successful in realistic environments, reasoning systems must identify and implement effective actions in the face of inescapable incompleteness in their knowledge about the world. Al investigators have long realized the crucial role that methods for handling incompleteness and uncertainty must play in intelligence.
It is simply stated that decision theory = probability theory + utility theory. In fact, it should be rather written that decision theory = uncertainly theory + utility theory, where a uniform uncertainty theory will emerge froni research on Bayesian approaches fuzzy sets, rough sets, and nonclassical logics (e.g., nonmonotic and modal logics). etc. And the creatioll of such a unifying uncertainty theory (e.g., probabilistic logic, or the merge of fuzzy sets and rough sets), overcoming the limitations of singular methods, I see as the most important challenge in that area.
Future Challenges of Computer Studies
Artificial Intelligence, Robotics and Real-Time Bounded Rationality
It is claimed by extrapolation of current progress in computer science and technology that in the 2020s computers suitable for humanlike robots will appear, and the 100 million MIPS to match human brain power will arrive in home computers before 2030. Of course, it was always a big problem with the proper definition of such a very fuzzy term like intelligence (e.g., a famous Turing test). Nevertheless it is possible to capture basic requirements and to provide a more precise definition for intelligence.
Intelligence can be understood as a clever search under bounded resources through the space of solutions using some feedback (e.g., performance measure) to direct a search. The above definition applies practically to all subareas of Al. including machine learning, planning, pattern recognition, robotics, etc. Search is judged on the basis of its completeness (i.e., is the strategy guarantee to find a solution when there is one?) optimality (does the strategy find the best quality solution when there are several different solutions), and total optimality (does the strategy find the best quality solution with the minimal search cost?)
In particular, the third problem is very important, because unfortunately, usually clever solutions of tough real-world problems consume enormous amount of time or memory. Thus the most challenging Al problem is to define a unifying computational theory of Al allowing tosolve very complex problems associated with truly intelligent behavior, and applicable both to robotics, machine vision, data mining, natural language interfaces, and so on. Machine learning, evolutionary computation, neutral nets, dynamic programming, game theory, and problem solving should be its limiting cases. The theories should be not less expressive than other non-AI computational theories, including Turing machines and more expressive models than TMs. It should allow to model and
solve questions about computation universality, construction universality, self-reproduction, to allow measure intelligence (e.g., in the form of better successor of the Turing test), to deal with complexity and incomplete and uncertain knowledge. Such an Al theory should allow to model systems which adapt to the new environments, can learn through their experience, in other words, they are brittle (like current robots are compared to animals). The central dogma of that model would be the investigation under which conditions the search for optimal (total optimal) solution will be successful. This will allow in particular designing convergent systems, neural nets, or classification machine learning algorithms. After years of less more successful research concentrating on some more tractable Al subareas, we are back roots and there is a time and the need for a more unifying effort. It appears that in may provide a small step in that direction.
Conclusions
It looks that I have posed more questions than provided answers. And this is a very optimistic the above means that we will never exhaust the non-enumerable (by diagonalization amount of challenging problems facing computer science to solve, and, as the consequence, we should never worry about unemployment. Should we? Can our wonderful artificially by us creatures outsmart us, and by evolution replace us in the ecological niche as the
most intelligent and the fittest species in the nature, and then to decide arbitrarily about our and our each step? Will we be happy in such a role? Very likely, no. There is a new challenge to disallow that to happen. However, even if to assume that this will never happen
the distinction between the cyborg and human will be so blurry that we will not be able distinguish that we stopped to be a human race as we knew it for many millenniums.
Recommendations
Based on the findings of the study, the following recommendations were made;
- Teachers’ education should be giving utmost attention in terms of training and retraining of the teachers for contemporary suitability as the world of computing is evolving on daily basis.
- Educational planners and stakeholders should have to make sure that the students are taught how to use the modern technology both at home and in school.
- Government, donor bodies and public organization should endeavor to help schools in the provision of some of these technological gadgets for learning in schools.
References
Eberbach E. (2001), Calculus Bounded Rationality: Process Algebra + Anytime Algorithms, Symposium on Challenges in Mathematical Sciences in the New Millennium ICRAMS-2000, Indian Institute of Technology. Kharagpur. India. Dec. 20-22. 2000.
Gulatee, Y, and Combes, B (2006). Identifying the Challenges in Teaching Computer Science, Artificial Intelligence: A Modern Approach, Prentice-Hall publisher. New York City.
Tu, Xu ZW. (2011). Three new concepts of future computer science. Journal f Computer ,Science and Technology 26(4): 616{624 July 2011. Doi 10.1007/S11390-011-1161-4
Ungerer, T. (2008). Computer Architecture Challenges. Millennium Publisher, NY.
Samuel, M. S. (2017). An Insight into Programming Paradigms and Their Programming Languages. Journal of Applied Technology and Innovation vol. 1, no. 1, (2017), pp. 37-57
Massari, G. Zanella, M. and Fornaciari. W. (2016.Towards Distributed Mobile Computing. Mobile System Technologies Workshop