410 likes | 596 Views
Research Thinking and Writing Toolbox . http://www.idt.mdh.se/kurser/computing/. Gordana Dodig Crnkovic School of Innovation, Design and Engineering, Mälardalen University, Sweden http://www.idt.mdh.se/personal/gdc/. Course Wrap-up.
E N D
Research Thinking and Writing Toolbox http://www.idt.mdh.se/kurser/computing/ Gordana Dodig Crnkovic School of Innovation, Design and Engineering, Mälardalen University, Sweden http://www.idt.mdh.se/personal/gdc/
Course Wrap-up This last lecturewillput the wholecourse in the perspective. Whathavewelearned? How to see all lectures, those separate puzlepieces as a whole? Zoom out! And zoom in! And zoom outagain!
Course Wrap-up In the lectureAn Introduction to Computer Ethics byKeith Miller, westudied the questions of values and ethicswhich come back in different ways in research and engineering: Why is this research performed? What are the consequences of a new technology for an individual and for a society? Our acting as engineers and researchers is based on ourethicalchoices. It is important to understanditsreasons and consequences. Ethics is an integral part of engineering and research curricula. Concerningwritingtool box, welearned from Paper Writing and Publicationlecture by Jan aboutusefulpractices of paperwriting and publication. In the lecture on Academic English, Diane emphasizedimportance of makingclear who sayswhat and giving credit to otherpeople – use of sourcesand problem of plagiarism. This is a veryimportantissue. Be carefulwhen you write your Notebook and Home Exam!
Course Wrap-up When it comes to thinkingtoolswehave got number of lectures illustrating different thinkingschools, approaches, models, techniques and research cultures. Among others, we learned the following: Perception and Neurorobotics. Multimodal sensory integration in human neocortex (Baran) showed us how knowledge production can be understood on the level of networks of neurons in the brain, how different sorts of signals (input information) from the environment and from the body get processed in the brain so that we acquire an integrated picture of the world. One of the central issues of perception and cognition in general is synchronization. This knowledge about Perception and Neurorobotics is used for application to a theoretical framework for multimodal information processing for robots (vision, speech, gestures ).
Course Wrap-up Design AND Science Equals False – The confusion in designing, constructing, and evaluating digital artefacts. Rikard argues for the difference between design and (classical, reductionist) understanding of science. In the Interaction Design – the process of creating useful and engaging digital artifacts, everything relates to everything else (holistic view in design, but relevant even broader). Different way of thinking is necessary: "Software designers should be trained more like architects than like computer scientists”. Design as a specific solution to a specific problem in a dynamicallychangingspecific situation in a futurecontextis different from classicalScience as a general knowledge about observed phenomena in the past which always appear in the same way under controlled conditions. There is no way for (classical reductionist, “Newtonian”) Design Science. However, Interaction Design is a multidisciplinaryfieldwhichappears at the intersectionbetweenDesign, Behavioural Sciences (such as psychology, cognitive science, organization theory, psychobiology, social neuroscience ), Electronics, Computer Science and Engineering and many more.
Course Wrap-up Dependable Software Engineering for Software-intensive Systems (Sasi): Software is a key and strategic factor in present-day and future technology and it must be dependable as more or less all of our vital functionsdepend on it. How is dependabilityassured? Source of errors: hardware, wired/wireless networks, environment, malicious faults. Faulttolerance and redundancymechanisms are used to increasedependability. Understanding requires ability to zoom in and zoom out (when solving problems in SE but even in general). Re-reading the Past (Oguzhan): Computing today is not only part of professional life and technological infrastructure, it is becoming part of everyday lives for all people and it deeply impacts our culture – from mobile phones to games, social networking, movies and music mediated by computational devices, to increasing amounts of ubiquitous computing (ambient computing) going on in the background. Computers have not been designed for broad usage, they haven’t changed their design from the beginning, so new design thinking is necessary. Oguzhan showed us how to search for new ideas by re-reading the past: what have we lost in flattening our interaction with the world (letters with texture, smell, human touch contra emails; different types of screens; BeyazitFirewatch tower contra weather forecast on the web). How to get back multi-dimensionality of communication? That is a designer’s task to discover and propose new ways of interfaces with computers.
Course Wrap-up Intelligence, Artifactual and Biological, Symbolic, Sub-symbolic and Agent-based (Gordana ): thinking is based on human abilitieswecallintelligence, so it is important to understandintelligence, natural and artifactual; the wayswereason, acquireknowledge and constructknowledge. Examples of computationalthinkingtools from AI: computationalmodels of logicalreasoning, constraint solvers, deductiontools, believe and decisionnetworks, decisiontrees, graphsearchingtools, artificial neural networks (ANN) and Agent-Based Models (ABM) http://aispace.org/mainTools.shtml See also: http://artint.info/html/ArtInt.htmlArtificial Intelligence - foundations of computational agents - free online book!
Lessons Learned: Thinking The Biggest PictureAnd the Smallest. Abstraction Already our perception* of the world implies many steps of simplification. Our perception of an apple is not an apple, it just (for us) represents an apple; it is only (simplified) information about an apple. When we think, we use concepts (ideas) and relationships between them (established by various processes of perception and thinking), and those are also abstractions and simplifications. “Thinking tools” are methods or approaches that have been developed for understanding and solving different sorts of problems in different domains (fields) which we use when we think within those fields. “Making distinctions” is one of the most fundamental thinking tools, it helps us find out what the world is and how it looks like. Information is "a difference which makes a difference." (Bateson, 1979). Information is the stuff we use to construct knowledge. * Perception is the conscious mental registration of a sensory stimulus: recognition and interpretation of sensory stimuli based chiefly on memory. Robert Fludd's depiction of perception (1619). wiki
Lessons Learned: Different types of thinking tools In the same way as a mechanical tool has specific role and can solve specific problem so is the case with thinking tools, models and abstractions. "It is tempting, if the only tool you have is a hammer, to treat everything as if it were a nail.“ Abraham Maslow Our conceptual world is a construction which consists of our understanding of what the world is, how things in the world relate to each other and how humans relate to the world including other humans. This is also how we solve problems (and hope for the best) One night Nasrudin (Mullah NassrAddin) was looking something desperately under the street lamp. His neighbors saw him and asked him what did he loose. He answered: "my key!" So his neighbors started to look for it as well all around the street lamp. After one hour and even more nobody found anything! So finally they asked him: "well do u remember where did you loose it your key?". Nasrudin answered: "yes, it must be somewhere there in the dark far from the street lamp." They asked him: "If you lost it there, why are you looking for it here then under the street lamp?" Nasrudin: "because under the street lamp I can see!"
Lessons Learned: Diversity One of the lessonslearned in this course is about the necessity of diversity. An Introduction to Computer Ethics – shows the diversity of ethicalapproaches. Paper Writing and Publication– diversity in writing and publication practices Academic English – diversity of voices: who is speaking? Perception and Neurorobotics– diversity of sensory inputs in the brain and their integration. Design AND Science Equals False – The confusion in designing, constructing, and evaluating digital artefacts – diversity of fields informing the Interaction Design. Dependable Software Engineering for Software-intensive Systems – diversity of levels of description /levels of abstraction, importance of zooming in and zooming out in problem solving. Re-reading the past – diversity of modalities for information design – re-capturing the complexity of interaction which is substantially “flattened” today. Intelligence, Artifactual and Biological, Symbolic, Sub-symbolic and Agent-based - importance of the diversity of intelligences ( logical, linguistic, spatial, musical, kinesthetic, interpersonal, intrapersonal, …) for both natural and artifactual intelligence.
Lessons Learned:Thinking The Biggest Pictureand the Smallest. The Role of Sciences Even though everything is related to everything else in some way or the other, we are lucky that for the majority of practical purposes we can implement separation of concerns and we do not need to take into account infinitely many factors in order to understand things “good enough” for a purpose.Example: if a person has a toothache, dentist will solve the problem – no need to visit nephrologists (kidney specialist) or cardiologist (heart specialist), even if our body makes one whole and all belongs together in one single body. In other words: many problems are local (But far from all! We know about errors able to “propagate” through several levels of organization of a system.) Lesson learned: When modelling .. … Make everything as simple as possible, but not simpler! (Einstein)
Lessons Learned: Thinking The Biggest Pictureand the Smallest. The Role of Sciences Buthowcanweknowwhatcan be simplified and whatcan not? Infinity Zoom – BeyondourUniverse : From the outeruniverse to the microscopic world http://www.youtube.com/watch?v=LVLRDBFyrTk Sciences help us explore and understand worlds that do not belong to our everyday experiences. Those worlds are often strange and unexpected and our everyday thinking tools simply do not apply! The Unnatural Nature of Science L Wolpert
Lessons Learned: Thinking The Biggest PictureAnd the Smallest The universe as weknow it today is reallyhuge. Imagine that ourknowledgeabout the universe is produced by different sciences, with their different tools, withintheirspecificdomains. Of coursewedo not expect instruments from one research field, saymicroscop from microbiologyapply to a different field, say observation of objects in astronomy. And yet, there are things in common! Mathematicalprinciples, structures and patterns. Computationalprocesses.
Lessons Learned: More is Different The fact that wemove on different scalesrevealsoneimportant feature of nature:MORE IS DIFFERENT! http://www.physics.ohio-state.edu/~jay/880/moreisdifferent.pdf P. W. Anderson, More Is Different Science, New Series, Vol. 177, No. 4047 (Aug. 4, 1972), pp. 393‐396 Today we want to understand emergent properties which are the system properties of the whole system which its parts do not possess. For example: Meaning of a word is an emergent property that no letter of the word possess. “A” “P” “P” “L” “E”
Lessons Learned: Thinking Complex Systems - Multidisciplinarity A complex system is a system composed of interconnected parts that as a whole exhibits properties not evident from the properties of its individual parts. Examples of complex systems: ant colonies, human economies and social structures, climate, nervous systems, cells and living organisms, including human beings, eco-systems, societies, as well as energy- or ICT infrastructures. Some characterize our time as “Complex Systems Era” and talk about “Complexity Revolution” which is clearly based on dramatically increased computational resources that scientists have today. See http://en.wikipedia.org/wiki/Complex_system Book: Unifying themes in complex systems: Proceedings from the third International ... AvAli A. Minai,Yaneer Bar-Yam http://www.google.com/books?id=mOna7SjN08sC&pg=PA421&dq=Complex-Systems+era&lr=&hl=sv&cd=3#v=onepage&q=Complex-Systems%20era&f=false
Lessons Learned: Thinking Complex Systems - Multidisciplinarity A fresh example: The Helsinki School of Economics (HSE), the Helsinki University of Technology (TKK) and the University of Art and Design Helsinki (TAIK) have merged to form Aalto University on January 1, 2010. Nowadays we have to think in many levels and from many points of view – this means we must be ready to think multi-disciplinary: understand results from several fields and be able to present results from our own research so that people from other fields can understand.
Some General Remarks: General Remark 1 Principle of Charity: Understanding Other People’s Thinking The principle of charity requires interpreting a speaker's statements to be rational and, in the case of any argument, considering its best, strongest possible interpretation. The goal of this methodological principle is to avoid attributing irrationality, logical fallacies or falsehoods to the others' statements, when a coherent, rational interpretation of the statements is available. http://en.wikipedia.org/wiki/Principle_of_charity
General Remark 1 Principle of Charity We make maximum sense of the words and thoughts of others when we interpret in a way that optimizes agreement. Davidson When is Principle of Charity good? When we want to learn from thoughts of others and we show respect for the thoughts of others. From the ethical point of view charity is a good principle. From the point of view of learning from others it is also useful. Why is this principle not always used ? When are we searching for the most unfavorable interpretations? Sometimes in order to check how far a statement will reach, one might search for situations where it does not hold. Also in discussions, opponents might tend to interpret each others words in least favorable ways.
General Remark 2 In all talks we find one recurring strategy – computational thinking: information processing view of problem modeling and solving!
Computational Universe and Computational Thinking Tools Info-Computationalism, video-recorded lectures, Gordana D-C: Info-Computationalism (ICON ) Part 1+ PPT PresentationPart 1 Info-Computationalism (ICON ) Part 2+ PPT Presentation Part 2 Info-Computationalism (ICON ) Part 3 + PPT PresentationPart 3 http://www.idt.mdh.se/kurser/comphil Jeannette M. Wing - Computational Thinking and Thinking About Computing (video) http://www.cs.cmu.edu/~wing/
Computational Thinking Toolbox Comment: People learning from computing, and new understanding of computing informed by natural processes including humans and societies, learning how to manage complexity and optimize resources.
Computational Thinking Toolbox Comment: Weborrow the ideas from nature, make themmore explicit and clear-cut and use in understanding of natureagain, but on a different level.
Computational Thinking Toolbox Comment: Fundamental: level of abstraction level of organization level of description COMPLEX SYSTEMS http://www.youtube.com/watch?v=XcbrKPj1V_UTour of Universe http://www.youtube.com/watch?v=RPumskk1dGk From Quarks to Outer Space http://www.youtube.com/watch?v=U6QYDdgP9eg The Origin of Life – Abiogenesis http://www.youtube.com/watch?v=OsDQ2jn2oAo Evolution of Life on Earth - Carl Sagan http://www.youtube.com/watch?v=FZ3401XVYwwThe Miracle in Human Brain http://www.youtube.com/watch?v=mRignZWs6oE&feature=related CGI brain simulation http://www.youtube.com/watch?v=A1ILrYHvnpA&NR=1 A journey through the brain's wiring
5 Deep Questions in Computing Comment: WHAT IS COMPUTING? Computing as defined by ACM/IEE computingcurriculahttp://www.acm.org/education/curricula-recommendations Computer Science: Algorithms and Complexity (AL); Architecture and Organization (AR); Discrete Structures (DS); Graphics and Visual Computing (GV); Human-Computer Interaction (HC); Information Management (IM); Net-Centric Computing (NC); Operating Systems (OS); Programming Fundamentals (PF); Programming Languages (PL); Software Engineering (SE); Social and Professional Issues (SP) Computing Engineering Software Engineering Information Systems Information Technology Emerging Disciplines
Is there any decision problem that can be solved by a non-deterministic Turing machine in polynomial time (belongs to complexity class NP), but not by a deterministic Turing machine, (meaning it does not belong to complexity class P) ? More formal: The P versus NP problem is to determine whether every language accepted by some nondeterministic algorithm in polynomial time is also accepted by some (deterministic) algorithm in polynomial time. To define the problem precisely it is necessary to give a formal model of a computer. The standard computer model in computability theory is the Turing machine, introduced by Alan Turing in 1936 [Tur36]. Although the model was introduced before physical computers were built, it nevertheless continues to be accepted as the proper computer model for the purpose of defining the notion of computable function. http://www.claymath.org/millennium/P_vs_NP/Official_Problem_Description.pdf
P=NP? Comment, Chris Calude: So this is essentially a personal remark about P vs. NP problem; I believe this is a very challenging and deep and interesting mathematical question, but I think one that has no computer science meaning whatsoever. For the simple fact that P is not an adequate model of feasible computation, and there are a lots of results – both theoretical and experimental- which point out that P does not model properly what we understand as feasible computation.Probably the simplest example is to think about the simplex algorithm which is exponentially difficult, but works much better in practice than all known polynomial solutions. Randomness through Computation, H Zenil, ed. 2011 • Comment, GDC: • Computational complexity theory is the part of the theory of computation dealing with the resources (time/space) required to solve a given problem. • In such analysis, a model of the computer is required. Typically, such models assume that the computer is deterministic (given the computer's present state and any inputs, there is only one possible action that the computer might take) and sequential (it performs actions one after the other). • The class P consists of all decision problems that can be solved on a deterministic sequential machine in an amount of time that is polynomial in the size of the input; the class NP consists of all those decision problems whose solution can be found in polynomial time on a non-deterministic machine.
What is Computation? Comment 1: What is computable depends on what is computation. Both P=NP? and this question pressupose a sort of a model of a computing machine. The question connected to the architecture of the machine is: What is computation? Comment 2: Concerning complex systems, we also want to know how to control complex systems (might be reducible to the question of how to build them)
What is Intelligence? Comments: Blue Brain http://bluebrain.epfl.ch http://news.bbc.co.uk/1/hi/sci/tech/8012496.stm
What is Information? comment : http://www.illc.uva.nl/HPI
Computational Thinking Example: Computing Universe and Agent-Based Modeling (ABM) • “And how about the entire universe, can it be considered to be a computer? Yes, it certainly can, it is constantly computing its future state from its current state, it's constantly computing its own time-evolution! And as I believe Tom Toffoli pointed out, actual computers like your PC just hitch a ride on this universal computation! “ • Chaitin, G “Epistemology as Information Theory”, in Computation, Information, Cognition, Dodig-Crnkovic G. and Stuart S., 2007 • “This would exclude all non-Markovian processes in the world which do not depend only on their current state for their evolution.” • How to avoid this objection? • We can think in terms of Agent-Based Modeling (ABM) which is modeling phenomena as dynamical systems of interacting agents. • Agents have identity and act autonomously. • Wofram’s CA are agents who act synchronously. • In general one assumes asynchrony and one models environment explicitly.
Computational Thinking Example: Agent-Based Modeling (ABM) • ABM applications go beyond state-determined automata by the inclusion of random-access memory capabilities. • That is, agents can engage with their environments beyond concurrent state-determined interaction by using memory to store descriptions and representations of their environments. They can also have access to shared knowledge among the members of their particular agent society. • Such agents are dynamically incoherent in the sense that their next state or action is not solely dependent on the previous state but rather depends also on some (random-access) stable memory that keeps the same value until it is accessed and that does not change with the dynamics of the environment-agent interactions. • In the computing universe as well as in the brain, the same hardware that performs computations is used as memory as well.
Computational Thinking Example:Organic Computing Organic computing is a form of biologically-inspired computing with organic properties. It has emerged recently as a challenging vision for future information processing systems. Organic Computing is based on the insight that we will soon be surrounded by large collections of autonomous systems, which are equipped with sensors and actuators, aware of their environment, communicate freely, and organise themselves in order to perform the actions and services that seem to be required. "Organic Computing System" is a technical system, which adapts dynamically to the current conditions of its environment. It is characterised by the self-X properties: • self-organization, • self-configuration (auto-configuration), • self-optimisation (automated optimization), • self-healing, • self-protection (automated computer security), • self-explaining, • and context-awareness. http://en.wikipedia.org/wiki/Organic_computing
Computational Thinking Example: Organic Computing Once fully developed, Organic Computing will be a conceptual framework, indeed a branch of science, that will form the basis for understanding the organic structure of Life on its molecular, organismic, cognitive and societal levels, and for building an organically structured information technology. A system is called organic if all of its components and subsystems are well coordinated in a purposeful manner. Organic structures realize themselves as hierarchically nested processes, structured such as to be able to meet upcoming challenges by goal-oriented reactions. The concepts of Organic Computing will not rely on the algorithmic division of labor, but on processes of evolution, development, self-organization, adaptation, learning, teaching, and goal orientation. None of the existing fields of science and technology have the full intellectual infrastructure, perspectives, motivation, methodology or experimental models to embrace the issue in its full extent, interdisciplinary collaboration is needed. http://www.organic-computing.org/ieeetaskforce/index.html
Question to answer in your Notebook What do we see with our ‘info-computational spectacles’ on, that we don’t see otherwise? Observe: Thinking is a process! Knowledge is a structure. If you want to see the knowledge-based approach, see: A Methodology of Human Knowledge course by George Kampishttp://www.jaist.ac.jp/~g-kampis/Human_Knowledge.html
Assignments DEADLINES Important to have in mind: Jan’s lecture on writing and Diana’s on the correct use of sources. You are welcome to share your reflections and discuss topics from the course via mail.