View
216
Download
0
Tags:
Embed Size (px)
Citation preview
Overview
Autumn Term• CO529: HCI• CO534: IT Consultancy
Methods• CO538: Concurrency Design
and Practice• CO636 Cognitive Neural
Networks
Spring Term• CO528: Introduction to
Intelligent Systems• CO535: IT Consultancy
Practice• CO536: Advanced
Programming Techniques• CO639: E-commerce• CO643: Computing Law
and Professional Responsibility
Three compulsory modules per term, plus one of…
Some General Points
• Module registration: Online from 23rd March on SDS• Coursework:exam weightings under review. Some
changes:– CO532 (Database Systems): moving to 40% CW, 60% exam.
• Options not done this year will typically be available as options for your final year too (but you cannot do too many level I (intermediate) modules).
• Handbooks available soon
CO529: Human-Computer Interaction
• Human-Computer interaction is complex• Involves many areas of study: design, technology,
psychology, …• In this module, we study
– How to analyse interaction problems, and then design effective interfaces for computers and similar devices
– How to evaluate an interface, understand its effectiveness, and improve it.
– The research that has been done into effective interface, both looking at specific research and research methods in the area.
(Co538) Concurrency – Design & Practice
(Co538) Concurrency – Design & Practice
ConcurrencyConcurrency is is many things happening at the same timemany things happening at the same time::
so is the real world – and computers, to be useful, have to model so is the real world – and computers, to be useful, have to model relevant bits of it;relevant bits of it;
it’s needed to support multiple demands it’s needed to support multiple demands (e.g. internet services, (e.g. internet services, games, robotics, graphics/GUIs, mobile phones, bio-systems games, robotics, graphics/GUIs, mobile phones, bio-systems experiments, big physics modelling , real-time control, operating experiments, big physics modelling , real-time control, operating systems, …)systems, …), even when running on a single processor;, even when running on a single processor;
it’s needed to exploit it’s needed to exploit multicoremulticore and and multiprocessormultiprocessor systems; systems;
it’s needed for it’s needed for distributeddistributed systems and systems and supercomputingsupercomputing;;
it’s needed for it’s needed for hardware designhardware design, , implementationimplementation and and operationoperation..
pretty much everything really …pretty much everything really … … … core Computer Sciencecore Computer Science
(Co538) Concurrency – Design & Practice
(Co538) Concurrency – Design & Practice
ConcurrencyConcurrency is is many things happening at the same timemany things happening at the same time::
so is the real world – and computers, to be useful, have to model so is the real world – and computers, to be useful, have to model relevant bits of it;relevant bits of it;
it’s needed to support multiple demands it’s needed to support multiple demands (e.g. internet services, (e.g. internet services, games, robotics, graphics/GUIs, mobile phones, bio-systems games, robotics, graphics/GUIs, mobile phones, bio-systems experiments, big physics modelling , real-time control, operating experiments, big physics modelling , real-time control, operating systems, …)systems, …), even when running on a single processor;, even when running on a single processor;
it’s needed to exploit it’s needed to exploit multicoremulticore and and multiprocessormultiprocessor systems; systems;
it’s needed for it’s needed for distributeddistributed systems and systems and supercomputingsupercomputing;;
it’s needed for it’s needed for hardware designhardware design, , implementationimplementation and and operationoperation..
pretty much everything really …pretty much everything really … … … core Computer Sciencecore Computer Science
Co538 (Autumn)
Co538 (Autumn) is
a pre-requisite
for
is a pre-requisite
for
the Stage 3 module:
the Stage 3 module:
“Advanced Concurre
ncy – Design &
“Advanced Concurre
ncy – Design &
Practice”,
Practice”, Co632 (S
pring)
Co632 (Sprin
g)..
Co538 (Autumn)
Co538 (Autumn) is
a pre-requisite
for
is a pre-requisite
for
the Stage 3 module:
the Stage 3 module:
“Advanced Concurre
ncy – Design &
“Advanced Concurre
ncy – Design &
Practice”,
Practice”, Co632 (S
pring)
Co632 (Sprin
g)..
(Co538) Concurrency – Design & Practice
(Co538) Concurrency – Design & Practice
ConcurrencyConcurrency errors are responsible for over 85% of errors are responsible for over 85% of diagnosed Windows system crashes …diagnosed Windows system crashes …
[M.M.Swift et al., ACM SOSP-2003][M.M.Swift et al., ACM SOSP-2003]
So it’s important !So it’s important !
(Co538) Research Engagement(Co538) Research Engagement
JCSPJCSP
a a concurrencyconcurrency library for Java library for Javaa a concurrencyconcurrency library for Java library for Java
a language for a language for concurrencyconcurrencya language for a language for concurrencyconcurrency
occam-occam-
(Co538) Research Engagement(Co538) Research Engagement
Programming technologies have been (are being) developed hereProgramming technologies have been (are being) developed here::
occam-occam- (an industrial strength programming language based on (an industrial strength programming language based on the formal process algebras of the formal process algebras of CSPCSP and the and the –calculus–calculus););
JCSPJCSP (a 100% pure Java library providing an API that supports the (a 100% pure Java library providing an API that supports the same concurrency model as same concurrency model as occam-occam-););
C++CSPC++CSP / / HCSPHCSP (a 100% pure C++ / Haskell library providing an (a 100% pure C++ / Haskell library providing an API that supports the same concurrency model as API that supports the same concurrency model as occam-occam-).).
This module will teach this model This module will teach this model though the programming technologiesthough the programming technologies (we won’t be doing the formal mathematics).(we won’t be doing the formal mathematics).This module will teach this model This module will teach this model though the programming technologiesthough the programming technologies (we won’t be doing the formal mathematics).(we won’t be doing the formal mathematics).
There will be lots ofThere will be lots of programming programming in this module. in this module. There will be lots ofThere will be lots of programming programming in this module. in this module.
For the past 20 years, this department has been a leading centre of For the past 20 years, this department has been a leading centre of research into the theory and research into the theory and (especially)(especially) the practice of the practice of concurrencyconcurrency..
(Co538) Research Engagement(Co538) Research EngagementFor the past 20 years, this department has been a leading centre of For the past 20 years, this department has been a leading centre of research into the theory and research into the theory and (especially)(especially) the practice of the practice of concurrencyconcurrency..
Recent (EPSRC) funded projects:Recent (EPSRC) funded projects:
TUNATUNA 2005-2007 (Kent, York, Surrey) 2005-2007 (Kent, York, Surrey)Pilot Study on Emergence and Complex SystemsPilot Study on Emergence and Complex Systems
TUNATUNA 2005-2007 (Kent, York, Surrey) 2005-2007 (Kent, York, Surrey)Pilot Study on Emergence and Complex SystemsPilot Study on Emergence and Complex Systems
CoSMoSCoSMoS 2007-2012 (Kent, York) 2007-2012 (Kent, York)(+ Microsoft Research Cambridge, Celoxica Ltd., Chris Alexander) (+ Microsoft Research Cambridge, Celoxica Ltd., Chris Alexander)
Complex Systems Modelling and SimulationComplex Systems Modelling and Simulation((£1.3M£1.3M))
CoSMoSCoSMoS 2007-2012 (Kent, York) 2007-2012 (Kent, York)(+ Microsoft Research Cambridge, Celoxica Ltd., Chris Alexander) (+ Microsoft Research Cambridge, Celoxica Ltd., Chris Alexander)
Complex Systems Modelling and SimulationComplex Systems Modelling and Simulation((£1.3M£1.3M))
RMoXRMoX 2007-2010 (Kent) 2007-2010 (Kent)Fast light safe concurrent operating systemsFast light safe concurrent operating systems
((£0.3M£0.3M))
RMoXRMoX 2007-2010 (Kent) 2007-2010 (Kent)Fast light safe concurrent operating systemsFast light safe concurrent operating systems
((£0.3M£0.3M))
(Co538) Research Engagement(Co538) Research EngagementFor the past 20 years, this department has been a leading centre of For the past 20 years, this department has been a leading centre of research into the theory and research into the theory and (especially)(especially) the practice of the practice of concurrencyconcurrency..
The key new concepts:The key new concepts:
processesprocesses (water-tight components) (water-tight components)processesprocesses (water-tight components) (water-tight components)
synchronised communicationsynchronised communication (over channels) (over channels)synchronised communicationsynchronised communication (over channels) (over channels)
networksnetworks (processes connected by channels – arbitrary shapes) (processes connected by channels – arbitrary shapes)networksnetworks (processes connected by channels – arbitrary shapes) (processes connected by channels – arbitrary shapes)
choicechoice (waiting for and reacting to events) (waiting for and reacting to events)choicechoice (waiting for and reacting to events) (waiting for and reacting to events)
structurestructure (networks within networks) (networks within networks)structurestructure (networks within networks) (networks within networks)
dynamicsdynamics (run-time network construction and re-shaping) (run-time network construction and re-shaping)dynamicsdynamics (run-time network construction and re-shaping) (run-time network construction and re-shaping)
mobilitymobility (agents) (agents)mobilitymobility (agents) (agents)
Space (2D) and Mobile Agents
Space (2D) and Mobile Agents
The The MatrixMatrixThe The
MatrixMatrix
Mobile Mobile AgentsAgentsMobile Mobile AgentsAgents
keyboardkeyboard
keywatch
drawdraw
Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)
gen
∙∙∙∙∙∙ cell cellcell cell cellcell
clot
Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)
keyboardkeyboard
keywatch
drawdraw
gen
∙∙∙∙∙∙ cell cellcell cell cellcell
clot
phase 1
screenscreendisplay
Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)
screenscreendisplay
keyboardkeyboard
keywatch
drawdraw
gen
∙∙∙∙∙∙ cell cellcell cell cellcell
clotphase 0
Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)
screenscreendisplay
keyboardkeyboard
keywatch
drawdraw
gen
∙∙∙∙∙∙ cell cellcell cell cellcell
clotphase 0
phase 1
Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)
screenscreendisplay
keyboardkeyboard
keywatch
drawdraw
gen
∙∙∙∙∙∙ cell cellcell cell cellcell
clot
Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)
screenscreendisplay
keyboardkeyboard
keywatch
drawdraw
gen
∙∙∙∙∙∙ cell cellcell cell cellcell
clotphase 0
Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)
screenscreendisplay
keyboardkeyboard
keywatch
drawdraw
gen
∙∙∙∙∙∙ cell cellcell cell cellcell
clotphase 0
Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)
screenscreendisplay
keyboardkeyboard
keywatch
drawdraw
gen
∙∙∙∙∙∙ cell cellcell cell cellcell
phase 1
clotclot
Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)
screenscreendisplay
keyboardkeyboard
keywatch
drawdraw
gen
∙∙∙∙∙∙ cell cellcell cell cellcell
phase 1
clotclot
Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)
screenscreendisplay
keyboardkeyboard
keywatch
drawdraw
gen
∙∙∙∙∙∙ cell cellcell cell cellcell
phase 1
clotclot
Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)
screenscreendisplay
keyboardkeyboard
keywatch
drawdraw
gen
∙∙∙∙∙∙ cell cellcell cell cellcell
phase 1
clotclot
Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)
screenscreendisplay
keyboardkeyboard
keywatch
drawdraw
gen
∙∙∙∙∙∙ cell cellcell cell cellcell
phase 1
clot
Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)Platelet Model (‘lazy’ CA)
screenscreendisplay
keyboardkeyboard
keywatch
drawdraw
gen
∙∙∙∙∙∙ cell cellcell cell cellcell
phase 1
clot
PROC numbers (CHAN OF INT out)PROC numbers (CHAN OF INT out) CHAN OF INT a, b, c:CHAN OF INT a, b, c: PARPAR delta (a, out, b)delta (a, out, b) succ (b, c)succ (b, c) prefix (0, c, a)prefix (0, c, a)::
PROC integrate (CHAN OF INT in, out)PROC integrate (CHAN OF INT in, out) CHAN OF INT a, b, c:CHAN OF INT a, b, c: PARPAR delta (a, out, b)delta (a, out, b) prefix (0, b, c)prefix (0, b, c) plus (in, c, a)plus (in, c, a)::
PROC pairs (CHAN OF INT in, out)PROC pairs (CHAN OF INT in, out) CHAN OF INT a, b, c:CHAN OF INT a, b, c: PARPAR delta (in, a, c)delta (in, a, c) tail (a, b)tail (a, b) plus (b, c, out)plus (b, c, out)::
succsucc
00
numbersnumbers
out
a
bc
integrateintegrate
out++
00
in a
bc
pairspairsout
tailtail
++in
a
c
b
PROC squares (CHAN OF INT out)PROC squares (CHAN OF INT out) CHAN OF INT a, b:CHAN OF INT a, b: PARPAR numbers (a)numbers (a) integrate (a, b)integrate (a, b) pairs (b, out)pairs (b, out)::
PROC fibonacci (CHAN OF INT out)PROC fibonacci (CHAN OF INT out) CHAN OF INT a, b, c, d:CHAN OF INT a, b, c, d: PARPAR delta (a, b, out)delta (a, b, out) pairs (b, c)pairs (b, c) prefix (0, d, a)prefix (0, d, a) prefix (1, c, d)prefix (1, c, d)::
pairspairs
00
fibonaccifibonacci
aa
out
bbcc
11dd
squaressquares
aa
outbb
numbersnumbers
pairspairs
integrateintegrate
Mandelbrot SetMandelbrot Set
...
farmer
harvester
graphics
mouseMovement
key
mouse
displayList
control
cancel
>>>
<<<
top
scale
left
canvas
scrolling
iterations
target
colours
displayList
( GraphicsCommand )
toGraphics
( GraphicsProtocol )
fromGraphics
( Object )
keyEvent
( KeyEvent )
focusEvent
( FocusEvent )
mouseEvent
( MouseEvent )
mouseMotionEvent
( MouseEvent )
componentEvent
( ComponentEvent )
canvasscanvass
java.awt.events
generaldrawing
house-keeping(e.g. size?)
collision detect
control
...
scorer
left right
keycontrol
mouse
flasher
new game freeze
canvas
Multi-PongMulti-Pong
Global minimum maintained in ring (made with one-place overwriting channel buffers) … easy!!!
myrtle
Master
“jcsp://tsp.myrtle.ukc.ac.uk”
...
Travelling Salesman ProblemTravelling Salesman ProblemTravelling Salesman ProblemTravelling Salesman Problem
Mobility via Mobile Channels (Tarzan)
Mobility via Mobile Channels (Tarzan)
To swing down a chain of 1M1M servers, exchanging one INTINT during each visit: 770 770 nsecs/visit (P3), 280 280 nsecs/visit (P4)To swing down a chain of 1M1M servers, exchanging one INTINT during each visit: 770 770 nsecs/visit (P3), 280 280 nsecs/visit (P4)
...
To swing down a chain of 1M1M servers, but doing no business: 450 450 nsecs/visit (P3), 120 120 nsecs/visit (P4)
To swing down a chain of 1M1M servers, but doing no business: 450 450 nsecs/visit (P3), 120 120 nsecs/visit (P4)
(Co538) Aims of this Module(Co538) Aims of this Module
Present concurrency mechanisms that are Present concurrency mechanisms that are easy to learneasy to learn and and easy easy to applyto apply..
Show how to cope with other approaches to concurrency, which Show how to cope with other approaches to concurrency, which are are easy to learneasy to learn but but hard to applyhard to apply..
Apply this knowledge to solve real-world problems.Apply this knowledge to solve real-world problems.
Improve programming skills generally Improve programming skills generally – lots of programming!– lots of programming!
Bring you into contact with research and researchers.Bring you into contact with research and researchers.
Enable some cool final year projects.Enable some cool final year projects.
Have fun and satisfaction in achieving something really important.Have fun and satisfaction in achieving something really important.
+ lots more information on the Co538 website:+ lots more information on the Co538 website:
www.cs.kent.ac.uk/co538www.cs.kent.ac.uk/co538
+ lots more information on the Co538 website:+ lots more information on the Co538 website:
www.cs.kent.ac.uk/co538www.cs.kent.ac.uk/co538
(Co538) Teaching Methods(Co538) Teaching Methods
Two lectures per weekTwo lectures per week..
Support seminars and practical classes (one or two per week)Support seminars and practical classes (one or two per week) – – exercises with (virtual) robots take place within these classes.exercises with (virtual) robots take place within these classes.
Anonymous on-line questions-and-answersAnonymous on-line questions-and-answers (an extensive library (an extensive library already exists and is catalogued and indexed).already exists and is catalogued and indexed).
Slides available on-lineSlides available on-line (Powerpoint and PDF formats). (Powerpoint and PDF formats).
Additional course notesAdditional course notes (basic and related technical papers). (basic and related technical papers).
Anonymous feedback questionnaireAnonymous feedback questionnaire (with space for free-form (with space for free-form crticism/praise) will be on-line towards the end of the course.crticism/praise) will be on-line towards the end of the course.
Previous year’s Co631* grade average: Previous year’s Co631* grade average: (07, 23) 70% (08, 42) 61% (07, 23) 70% (08, 42) 61%
Previous year’s Co632 grade average: Previous year’s Co632 grade average: (07, 23) 68% (07, 23) 68%
* Co631 * Co631 Co538 Co538* Co631 * Co631 Co538 Co538
(Co538) Teaching Methods(Co538) Teaching Methods
Two lectures per weekTwo lectures per week..
Support seminars and practical classes (one or two per week)Support seminars and practical classes (one or two per week) – – exercises with (virtual) robots take place within these classes.exercises with (virtual) robots take place within these classes.
Anonymous on-line questions-and-answersAnonymous on-line questions-and-answers (an extensive library (an extensive library already exists and is catalogued and indexed).already exists and is catalogued and indexed).
Slides available on-lineSlides available on-line (Powerpoint and PDF formats). (Powerpoint and PDF formats).
Additional course notesAdditional course notes (basic and related technical papers). (basic and related technical papers).
Anonymous feedback questionnaireAnonymous feedback questionnaire (with space for free-form (with space for free-form crticism/praise) will be on-line towards the end of the course.crticism/praise) will be on-line towards the end of the course.
Previous year’s Co631* grade average: Previous year’s Co631* grade average: (07, 23) 70% (08, 42) 61% (07, 23) 70% (08, 42) 61%
Previous year’s Co632 grade average: Previous year’s Co632 grade average: (07, 23) 68% (07, 23) 68%
* Co631 * Co631 Co538 Co538* Co631 * Co631 Co538 Co538
Show Show videovideo
(Co632) Advanced Concurrency – Design & Practice(Co632) Advanced Concurrency – Design & Practice(Co632) Advanced Concurrency – Design & Practice(Co632) Advanced Concurrency – Design & Practice
ConcurrencyConcurrency is is many things happening at the same timemany things happening at the same time..
This module introduces This module introduces dynamicsdynamics – the construction, evolution and – the construction, evolution and termination of systems (or sub-systems) termination of systems (or sub-systems) on-the-flyon-the-fly..
This is needed for systems that:This is needed for systems that:
scale with demand scale with demand (e.g. web services, air-traffic control)(e.g. web services, air-traffic control);;
evolve with demand evolve with demand (e.g. peer-to-peer networking)(e.g. peer-to-peer networking);;
model growing organisms model growing organisms (e.g. nanite assemblies)(e.g. nanite assemblies);;
configure, load and run supercomputer resourcesconfigure, load and run supercomputer resources (e.g. (e.g. GridGrid computing, our computing, our TUNATUNA and and CoSMoSCoSMoS clusters) clusters). .
funded and in procurement …funded and in procurement …funded and in procurement …funded and in procurement …
32 * ( 3.0GHz. Pentium IV, 1GB RAM) + 48-way Fast Ethernet Switch32 * ( 3.0GHz. Pentium IV, 1GB RAM) + 48-way Fast Ethernet Switch32 * ( 3.0GHz. Pentium IV, 1GB RAM) + 48-way Fast Ethernet Switch32 * ( 3.0GHz. Pentium IV, 1GB RAM) + 48-way Fast Ethernet Switch
ConcurrencyConcurrency is is many things happening at the same timemany things happening at the same time..
This module introduces This module introduces dynamicsdynamics – the construction, evolution and – the construction, evolution and termination of systems (or sub-systems) termination of systems (or sub-systems) on-the-flyon-the-fly..
This is needed for systems that:This is needed for systems that:
scale with demand scale with demand (e.g. web services, air-traffic control)(e.g. web services, air-traffic control);;
evolve with demand evolve with demand (e.g. peer-to-peer networking)(e.g. peer-to-peer networking);;
model growing organisms model growing organisms (e.g. nanite assemblies)(e.g. nanite assemblies);;
configure, load and run supercomputer resourcesconfigure, load and run supercomputer resources (e.g. (e.g. GridGrid computing, our computing, our TUNATUNA and and CoSMoSCoSMoS clusters) clusters). .
(Co632) Advanced Concurrency – Design & Practice(Co632) Advanced Concurrency – Design & Practice(Co632) Advanced Concurrency – Design & Practice(Co632) Advanced Concurrency – Design & Practice
funded and in procurement …funded and in procurement …funded and in procurement …funded and in procurement …
32 * ( 3.0GHz. Pentium IV, 1GB RAM) + 48-way Fast Ethernet Switch32 * ( 3.0GHz. Pentium IV, 1GB RAM) + 48-way Fast Ethernet Switch32 * ( 3.0GHz. Pentium IV, 1GB RAM) + 48-way Fast Ethernet Switch32 * ( 3.0GHz. Pentium IV, 1GB RAM) + 48-way Fast Ethernet Switch
Co538 (Autumn)
Co538 (Autumn) is
a pre-requisite
for
is a pre-requisite
for
the Stage 3 module:
the Stage 3 module:
“Advanced Concurre
ncy – Design &
“Advanced Concurre
ncy – Design &
Practice”,
Practice”, Co632 (S
pring)
Co632 (Sprin
g)..
Co538 (Autumn)
Co538 (Autumn) is
a pre-requisite
for
is a pre-requisite
for
the Stage 3 module:
the Stage 3 module:
“Advanced Concurre
ncy – Design &
“Advanced Concurre
ncy – Design &
Practice”,
Practice”, Co632 (S
pring)
Co632 (Sprin
g)..
TheThe TUNATUNA cluster is for cluster is for modelling self-assembling and modelling self-assembling and evolving evolving nanitenanite assemblies assemblies (nanobots)(nanobots), in particular safety , in particular safety mechanisms allowing their mechanisms allowing their deployment in human medicine. deployment in human medicine. One study concerns artificial One study concerns artificial blood platelets for emergency blood platelets for emergency response to major injuries. This response to major injuries. This is research council funded, but is research council funded, but will be available to students will be available to students taking this module.taking this module.
(Co632) Advanced Concurrency – Design & Practice(Co632) Advanced Concurrency – Design & Practice(Co632) Advanced Concurrency – Design & Practice(Co632) Advanced Concurrency – Design & Practice
32 * ( 3.0GHz. Pentium IV, 1GB RAM) + 48-way Fast Ethernet Switch32 * ( 3.0GHz. Pentium IV, 1GB RAM) + 48-way Fast Ethernet Switch32 * ( 3.0GHz. Pentium IV, 1GB RAM) + 48-way Fast Ethernet Switch32 * ( 3.0GHz. Pentium IV, 1GB RAM) + 48-way Fast Ethernet Switch
Upgrading so
on to C
oSMoS cluste
r (4* t
he power)
Upgrading so
on to C
oSMoS cluste
r (4* t
he power)
Upgrading so
on to C
oSMoS cluste
r (4* t
he power)
Upgrading so
on to C
oSMoS cluste
r (4* t
he power)
How the brain computes• Electrochemical dynamics of neural
circuits• Neurons, synapses, dendrites,
axons, etc• Structure of the brain (subdivision
into regions: sensory, association, action areas)
• Activation dynamics,– excitatory, inhibitory, etc
• Types of networks– feedforward, recurrent, etc
Learning
• How do neural systems learn?• How do humans learn?• Change of synaptic efficiency• Types of learning,
– unsupervised• extracting correlations from
environment• principle components analysis
– supervised• learning to perform a task• back-propagation of error
How the brain learns
• Biologically plausible learning– Hebbian learning– The Generalised
Recirculation Algorithm
• run simulations using PDP++ simulation tool
• autumn term: 2 hours lectures & 2 hours of practicals per week
• course text book,
R. O’Reilly & Y. Munakata: “Computational Explorations in Cognitive Neuroscience:Understanding the Mind by Simulating the Brain” MIT Press, 2000.
CO528: Intro. to Intelligent Systems
• What does it mean for computers to act intelligently?• How can we take inspiration from natural intelligent
systems to implement intelligence on computers?– Neural networks, genetic algorithms, swarm intelligence,…
• How can we formalise the notion of intelligence and implement it using these formalities?– Logic-based intelligence, constraints, symbolic AI
• Debates and questions:– Philosophical questions: what is intelligence?
Methodological questions: Symbolic vs. subsymbolic? Bio-inspired vs. automated reasoning?
CO536 Advanced Programming Techniques
UnixFinding your way around + useful commandsAssessed in an on-line test (no exam questions)
C9 lectures, terminal classes, graduated courseworkFocus on aspects of C that are different from Java
pointers, malloc(), preprocessor, program structureAdvanced Java
JVM – class loading and instantiation, JIT-compiling, object instantiation and initialisation, interning, garbage collectionAdvanced language and API features of Java, such as reflection, finalisers and generics
CO639: E-Commerce
• To understand the business processes in e-commerce
• To be able to write programs that implement effective and safe e-commerce systems
• To understanding and be able to implement security and cryptographic procedures relevant to e-commerce
• To understand issues about payment in e-commerce
• To understand relevant legal issues
CO643: CLPR
• Acting professionally in a computing career• Understanding and debating legal and ethical
issues concerned with computing• Understanding and applying aspects of the
law as it applies to computing topics, e.g. data privacy.
• Understanding how legal and ethical issues impact upon the management of large scale IT projects