Saturday, March 6, 2010
In Part I last week on the importance of computer technology I discussed the subject in general and gave a few useful related web sites. In this second part I would like to discuss artificial intelligence, bioinformatics, the professional scope for computer engineers and what is expected professionally from them. In addition to the disciplines mentioned in Part I, emerging technologies, applications and curriculum recommendations have appeared, which need to be mentioned as well. 1. Artificial intelligence (AI): The subfield of computer science that is concerned with understanding the nature of intelligent action and making computer machines, especially intelligent computer programmes, capable of such action is known as artificial intelligence. It can also be described as the performance by computer systems of a task that normally requires human intelligence, such as visual perception or decision-making. Artificial intelligence combines computing with psychology, linguistics and philosophy. It is concerned with the design of intelligent computer systems and the study of intelligence in both people and machines. Using artificial intelligence techniques, computers are being programmed to do things previously done only by people. Artificial intelligence systems are already in use for such tasks as fault diagnosis, mineral prospecting and language translation and are not confined to methods that are biologically observable. The main emphasis of computer science and artificial intelligence studies is on the principles and practice of software design. Distinctive features include human-centred computer systems, foundations of concurrent systems, networking and distributing systems, vision, national language processing, neural networks and artificial life. These study programmes are supported by powerful computing facilities running a wide range of software. The Stanford University website: http://www-formal.standford.edu/ jmc/whatisai/whatisai/html provides a description and applications of AI. 2. Bioinformatics: Bioinformatics is the application of computer technology to the management of biological information. More information on this can be found on websites like http://www.bioplanet.com/education.htm . Some universities have added other subjects, like accounting, finance and law to their computer science curriculum. Computer science and engineering graduates have perhaps the largest spectrum of jobs to select from. Computer architecture, computer-aided design and manufacturing of VLSI/ULSI circuits, intelligent robotic systems, computer-based control systems, telecommunications and computer networking, wireless communication systems, signal and information processing and multimedia systems, solid-state physics and devices, micro-electromechanical systems (MEMS), electromagnetic and electromechanical systems, data-storage systems, data mining, embedded systems, distributed computing, mobile computing, real-time software, digital signal processing, optical data processing, banking, insurance, healthcare and multinationals, to name but a few common careers. After having followed a good university course in any discipline of computer science and engineering, graduates are normally expected to have learnt two types of skills: Technical computing skills: Problem-solving ability, recognising levels of abstraction in software, hardware systems and multimedia. Practical skills such as building and using database management systems and other sophisticated software tools. Programming: using existing software libraries to carry out a variety of computing tasks, such as creating a user interface. Being aware of the uses to which computers are put, recognising issues to do with security and safety. Looking at innovative ways of using computers, creating tools, providing tools support, etc. General professional skills: Communicating in writing, giving effective presentations and product demonstrations and being a good negotiator (both in traditional environments and electronically). Preparing for a job search; this involves building an impressive curriculum vitae and basing this confidently on technical and other skills. In addition, depending on interests, specialised domain knowledge such as business, medicine and biology will be acquired. Being an effective team member. Understanding the special requirements of a globally distributed project with participants from multiple cultures. Recognising the challenges and opportunities of keeping skills up-to-date and understanding how to do so. Knowledge of fundamental principles and their applications to develop software-based solutions. The ability to apply and implement appropriate theories and techniques to the design and development of computer systems and to use correct criteria and tools for the planning, development, testing and evaluation of software systems. The ability to recognise the capabilities and limitations of computer-based solutions as well as sources of risk. I still vividly remember the large, room-sized configuration of the IBM computer system, which used big stacks of punch cards that had been installed in Sweden at the Oxelosund Steel Mills, which I visited as a graduate student. It was the most modern steel plant in the world at the time, using the newly developed Kaldo Process for the purification of steel (reducing its carbon content). We were visiting educational and industrial institutions in Sweden in July 1964 as a delegation from the Technological University of Delft, Holland. Sweden was a beautiful, clean country – cleaner than any I had seen anywhere before. The people were extremely polite, hospitable and disciplined. At that time Holland was known as the cleanest country, of which the Germans never hesitated to inform me when I praised their cleanliness. They did have a point and I was duly impressed by what I later found in Holland. However, after seeing Sweden, I had to admit that their country was even cleaner. We visited the Royal Institute of Technology, Uppsala University, Volvo, Husquarna, Scania Vabis, Oxelosund and Sandvik Steel Mills, etc. It was our first exposure to an operational computer system. The IBM computer configuration was the first of its kind and was installed and operated by the Americans for the automatic control of the steel mills. Nowadays a very small unit is more powerful and more efficient than that huge configuration was. About 25 years after that memorable visit I heard the shocking news that the Prime Minister of Sweden, Mr Olof Palme, had been brutally shot down while walking back to his residence after seeing a film. How could anyone be so callous as to murder such a good human being, a pacifist, was beyond my comprehension. I wrote an obituary in a local English daily and was pleasantly surprised to receive a letter of thanks from Mrs Palme through their embassy in Islamabad. I was lucky to have a team of experts in theoretical computation (Computational Fluid Dynamics, etc.), computer systems engineering (Control and Automation, etc.), complex process technology (fault-free running of the enrichment plant) and maintenance of these complex systems (hardware engineering) headed by Dr M Alam, Nasim Khan, Dr M Ashraf Atta and Brig. Rafiuddin, respectively. They, together with their other competent and able colleagues, managed to solve all the problems related to the centrifuge plant and the manufacture of nuclear devices and ballistic missiles.