Every problem has a software based solution


























Think of any difficult problem, you can probably find a way to relate it to software. Create and host the software, let people with money or data use it.

Criteria

  • You have no money (to spend on acquiring
    data, expertise, equipment), only a
    computer and internet access.
  • You have no data.
  • You only have skills in web development,
    such as LAMP stack or appengine.
  • You do not have specialized knowledge
    gained from years of study. You are
    reasonably smart but time limited and can
    only study from textbooks/websites during
    the duration of your coding, which is
    limited to a maximum of 1 year
  • You can only work alone or with one or
    two other people
  • The software should generate money for
    you. It should not generate it from
    advertising, only from paying users. This
    is to force it to be more useful than just
    another web 2.0 social
    networking/aggregation site. The paying
    users could be in the form of charity
    donations or government funding (it is
    likely to be useful if people are willing
    to donate money to it).
  • You only want to contribute on huge
    world changing problems.

Some problems looking for a solution


  • Tissue Engineering

    • You want to replace aged or
      damaged organs and tissues such as the
      heart, liver, lungs or pancreas.
    • This can be organized as a giant
      optimization problem. What sequence of
      cells/chemicals need to be output on
      which xy coordinate at which time in
      order to create functioning biological
      material.
    • Hypothetically, you would set up a
      million identical dispensing robots,
      each loaded with cells/chemicals, and
      intrumentation to check the
      functioning of the biological material
      produced. You do not have the money or
      expertise to create this setup,
      however you can set up the
      optimization problem on amazon
      mapreduce to direct the robots.

  • Speech Recognition

    • This is a problem of having enough
      labelled data.
    • Mechanical Turk workers contribute
      and label the data.
    • Hosted speech recognisers are
      automatically generated from the
      labelled data. Users pay to use the
      speech recognisers, revenue going
      in, for example, a 90/10 split
      between the funders of the data
      creation/labelling, funders of the
      compute resources, used and you.
    • Users should be able to team up
      through the site and get a share of
      the produced speech recogniser's
      revenue (by donating either their
      time, money, computer power, or data).

  • Self Driving Car

    • The hard, software only, part of
      this is basically image recognition
      (which direction/speed to go while
      viewing video), which is about
      having enough labelled data, and so
      the solution is very the similar to
      the speech recognition item above
      (the produced classifier is not
      hosted but downloaded to a car computer).

  • Artificial Doctor

    • The problem is create an expert
      system(s) for medical diagnosis. It
      has to be sufficiently comprehensive
      and detailed to not give too many
      errors.
    • Create a site where people can
      upload expert system rules and test
      them in combination with possibly
      millions of rules other users have
      uploaded.
    • Workers are compensated by
      assessments of their contributions
      by other workers. For example, other
      workers rank 10 randomly selected
      contributions, and results are
      collated and money dispensed
      accordingly.

  • Loneliness

    • Create a virtual companion.
    • The virtual companion needs to be
      able to understand the user's speech
      and facial expressions through video
      in real time. It needs to know what
      to say needs to have a pleasing
      voice and facial expressions itself.
    • Use the software solution created
      for speech recognition above. Run
      that system for recognition of
      speech, emotion in speech, body
      position, body language, facial
      expressions, recognition of
      household objects (these are called
      classifiers).
    • Train machine learning algorithm
      to generate speech and facial
      expressions, using the above created
      classifiers (the compute resources
      used will be funded by users as was
      with the data collection/labeling).
    • Use the collaborative expert
      system website from the artificial
      doctor problem above, for creating
      rules for what to say/emote.
    • Charge lonely people to converse
      with the generated virtual
      companions, splitting revenue 90/10
      between funders and you.

1 comments:

Anonymous said...

A true random number generator

Post a Comment