A Selection of Grand Research Questions of the Neuromorphic Engineering community

How can we build robust systems in extremely unpredictable environments? Many real-time robotic systems are designed for extremely controlled environments. This task is aimed at discovering how to build adaptable, flexible robots that can succeed in unconstrained environments.

Is it possible to understand the neural algorithms from physical implementations? "I do not understand it unless I can build it." This task is aimed at understanding modules of cognition by attempting to duplicate them, and discovering and generating questions in the process.

Can we construct a set of modules from which to build cognitive systems? Many specific components of cognition, both physical implementation and algorithmic, have been realized now. This task aims to develop a library of modules which can be assembled to yield functional cognitive systems.

How can we write algorithms for unreliable systems? For nearly a hundred years, engineers have constructed computers that work reliably and predictably, and their properties have been studied. Through this, the entire field of computer science developed algorithms and programs to effectively exploit these properties. Nothing comparable exists for biological systems which unreliably "execute" commands. This task aims to discover how to create these functional programs in the face of great unreliability.

What small tasks are self-contained cognitive processes that can be extracted and modeled? This task aims to discover a small set of tasks that are cognitive, complex enough to be interesting, and self-contained. A common example is the bee - with only a million neurons, it demonstrates complex social, predatory, nurturing, navigation, etc. behaviours.

How can do we move beyond modeling small components to solving integrated cognitive systems? This task aims at simply beginning to integrate the many functions that exist separately.

What would be a "cognitive MNIST"? This task aims to answer the question of what a cognitive "MNIST" benchmark might look like.

Can there be a definition of "intelligent thinking"? This task takes a philosophical angle to discover what we mean by "intelligent thinking."

Raw Notes from Morning Meeting

Below this are the notes taken on the display board from the meeting on May 6, 2015.

Past Successes

  • Engineers interested in neuroscience
  • Circuits using subthreshold technologies
  • DVS
  • SpiNNaker
  • True North
  • Fabio's chip works! The usefulness of Inspiration
  • Collaborative community, Telluride, Capo Caccia
  • Convergence between industry and academia
  • Transport ideas from neurormorphic to other fields
  • Power / Accuracy Tradeoffs
  • Algorithms for unreliable systems and the role of timing
  • Self constructing system

Fundamental Questions

  • What do we mean by "intelligent thinking" (Turing test)
    • Playing chess vs. understanding that / how you play it
  • Understand complex systems, not reimplementing existing approaches in new hardware
    • Adaptive systems
    • Flexible robots (unconstrained environments)
  • Study neural system by physical implementations
  • Decompose behavior into smaller parts? Smaller modules?
  • How to develop / program system-level neural systems?
  • Find small sets of tasks, e.g. context-sensitive tasks
  • Define a "roadmap" for the next 2-5 years
    • What can we achieve?
    • How do we get there?
    • Collaboration vs diversity
  • Think in terms of cognitive models vs. single neuron representation
    • Danger: sticking to one / the wrong "model" of how the brain works
  • Define theories of cognitive computation
  • Benchmarks, e.g., "a cognitive MNIST"
    • Properly define the task to solve

How to speed up our progress?

  • Define Targets for the next 5 years
  • Ongoing evaluation of progress at Telluride & Capo Caccia
  • Document the failures
  • Bridge across the years to track the history of things

Suggestions for an Task/challange Framework:

  • A challenge-based benchmark (roboCup, DARPA challenge) promotes working on a specific neuromorphically touched goal. This means: engineering/machine learning approaches to the problem shouldn't be excluded or restricted. The task should be defined in such a way that it emphasyzes fields where neuromorphic hardware is good in, but it's not constrained to it. (This definition promotes that machine learning and neuromorphic communities learn from each other)
  • Example for not putting artificial constrains: A flying system that uses super cool machine algorithms highly power consuming that beats an eventbased system could be 'constrained' by increasing the duration of the test on the following year, instead of limiting setting a constrain on power.
  • Each year, after seeing the initial results, might be interesting to reformulate the task (or environment of the task) so thatif you have a winning system, it's not necessarily a winning system on the reformulated task (we deliberately use 'reformulate' to refer that the overall task should essentially be the same, but the environment (in a realistic way) changes for emphasyzing innovation and generalization)(To make sure that we don't reach a local minima)

General Points for Capocaccia Organisation

  • In general, hopefully, this things would come out of such a competition, but if we don't do it as a competition we should emphasize on this points.
  • 1) keep up the development on comunication standards, so it is possible to put hardware from different Universitys together.
  • 2) Store the results of all Capocaccia workshops in a way that they are easily accessible in next years. e.g. topic based.
  • 3) Documentation should be delivered every year for the code developed (Maybe by the scholarships or junior applicants)
  • 4) The code should be released under iso compatible open-soruce license, if possible. (create Capocaccia Repository?)

Possible for Tasks

TODO add meeting poins

An example task, could be a drone based competition, where you could use vision/auditory cues for catching several balls before the other. Each ball/object, of different colors/sizes/shapes can give different amount of points. Complexities of the system would be:

  • You have to, either merge 2+ visual cues or visual+auditory cues
  • You have to compensate for your own movement in your sensory systems
  • You have to plan a strategy
  • You have to interact with other beings
  • You have to plan a strategy or identify other's strategies
  • You have physical (not arbitrarily defined!) constraints on size, weight, power, resources
  • You have to 'understand the physical implications of your actions
Last modified 4 years ago Last modified on 05/07/15 15:20:48