FRDCSA | internal codebases | ProblemSpace

[Project image]

Architecture Diagram: GIF
Code: GitHub

Jump to: Project Description | Parent Description | Capabilities

Project Description

One technique under consideration is using Alice and the Sammon mapping to procure a visualization of the problem space as exported by various systems. In this way we wish to visualize who is accomplishing what task.

At the technical level, there is a major component gimmick, integrating Emacs cyc-mode with unilang monitoring and clear user knowledge models results in a high-level symbolic VR (that is not physically based) to provide an abstract and contingent knowledge manipulation and execution monitoring environment for FRDCSA analysts. Using the popular Matrix interface is a natural start for this project.

I wrote this Emacs code (in 2 hours by copying and making small changes to zone.el) primarily for a few reasons:

  • The Matrix science fiction world is very popular and I'm hoping to increase interest in the FRDCSA.
  • By association we quickly convey many of the definite parallels between Matrix concepts and our project - for instance the similarity between the svre and the Construct.
  • The svre requires a powerful interface within Emacs and this is a natural starting point.

Note that the streaming texts are actually OpenCyc axioms judged relevant by audience to the operator/analyst and summarize events, including inferences drawn from sensor data. Sensors generally mean subsystems such as a SLAM vision based navigation system, a face recognition system, voice recognition, etc. In that sense this is extremely similar to the original Matrix visualization in terms of their correspondence to the environment.

So, for instance here are some examples of situations and plausible content.
You left a given room and VSLAM detected this. (#$departed #$AndrewDougherty #$Wean-4326)
You left your computer and the face recognizer noticed your face was no longer in field of view. (#$leftFOV #$WebCamera1280 #$AndrewDougherty)
You said something into your microphone. (#$speechAct #$AndrewDougherty "Where are my cable ties?")
While spidering, radar and architect discovered a system that implements important capabilities. (#$located #$radar (#$softwareSystemFn "scene"))

Of course, the real fun begins when we establish P2P knowledge sharing networks over channels like encrypted IM, allowing communication. When integration is further made to our goaling system, the result is quite usable. Integrated with an augmented reality wearable computer system or even just a cell phone, the results are quite staggering. Like a stock ticker except about arbitrary concepts and events.

However, there is also an execution component, via the cyc-mode Emacs major mode, which allows the user to control interaction with CycL in the Emacs environment. This is very powerful from a power user / knowledge representation point of view, because Emacs is basically the world's most advanced symbolic knowledge manipulation environment. This interface allows the users to manipulate onscreen information and events using commands bound to key sequences.

We also apply clear eyetracking to visually track which axioms the user is viewing in order to behave contingently. So for instance if the user looks at a particular item longer, it could possibly expand the context for that item.


  • Emacs-Client-11349, eval (problemspace)
  • Emacs-Client-23739, eval (problemspace)
  • Emacs-Client-23793, eval (problemspace)
  • Emacs-Client-11978, eval (problemspace)
  • Emacs-Client-11978, (eval "(problemspace)")
  • Emacs-Client-11978, (ps-eval "(problemspace)")
  • Here are some ideas. all we need now is a simplistic goal system, built from the ground up, _maybe_ with some basic common sense. On the other hand, then, we should get the event logging system working, and write helper functions, EventLog, etc, so that other systems can make use and analyze log data easier. We should generalize the functions found in sinless and manager that make use of the score event system, (moving that of course into the eventlog). problemspace should visualize the eventlog data, using nodebrain type filtering. That stuff has to work inferentially.
  • bard could have a poem in which problemspace and reasonbase rhymed.
  • Use font lock to alter the color of text in problemspace.
  • Also note the following - currently, two things, first currently problemspace will drop events if they happen while the user is typing, since it will load, be destroyed, having cleared the queue.
  • The reason I stopped running problemspace is it causes too much data to be written in the memax session logs.
  • problemspace should only scroll when it needs to, and should save state in between execution.
  • Visualize problems in terms of problemspace vectors.
  • problemspace should formalize wikipedia, although the corporations are doing so as well.
  • Note that problemspace should not come on if we are in a recording session from manager.
  • Could add that as a module to score/problemspace/fieldgoal or something.
  • bard could have a poem in which problemspace and reasonbase rhymed.
  • Add ability to set flags for whether to use full or half screen, and to set colors, to problemspace.
  • Could have Bill's TV showing problemspace.el, with a feed of all problems being solved.
  • interface misterhouse with problemspace
  • In problemspace that is.
  • Add sound to the problemspace from the matrix. how cheesy.
  • For instance, manager could send commands to take over the Emacs screen (preferably waiting for no communications for a while.) Also for instance, when problemspace shows items.
  • problemspace should undergo usability studies - to show that it displays relevant information in usable ways.
  • I just realized that perhaps a "fantasy" type interface might appeal to some developers for problemspace - i.e. use developed metaphors from interactive gaming in lieu of actual military metaphors - plus these have a more pacifist nature (hopefully).

This page is part of the FWeb package.
Last updated Sat Oct 26 16:54:21 EDT 2019 .