THEMAIN LA MILLOR TOTHAIMAHALLI HATAN    US 20180096432A1
( 19) United States
(12 ) Patent   Application Publication ( 10) Pub . No.: US 2018 /0096432 A1
    Varma et al.    (43) Pub. Date :    Apr. 5 , 2018
(54 ) METHODS AND SYSTEMS FOR    Publication Classification
    REPRESENTING RELATIONAL
    INFORMATION IN 3D SPACE    (51) Int. Ci.
    G06Q 40 /06    ( 2006 .01)
(71) Applicant: RECONSTRUCTOR HOLDINGS    (52 ) CPC
    U .S. CI .
    LLC , Greenwich , CT (US )    ......    . . . . . ..    G06Q 40 /06 (2013 .01)
( 72 ) Inventors : Samir Varma, Cos Cob , CT (US );    (57 )    ABSTRACT
    Michael Wayne Shore , Dallas, TX    Systems and techniques are described herein for graphically
    (US )    representing a number of data objects in three dimensional
    space . In one example , multiple data objects may be graphi
(21) Appl. No.: 15 /833, 986    cally represented and manipulated in a three ormore dimen
    sional space, with each axis of a three dimensional grid
(22 ) Filed : Dec . 6 , 2017    representing one or more variables or variables of the data
    objects . A graphical user interface may be provided that
    Related U .S . Application Data    enables configuration of the display (visual, or alpha
(60 ) Continuation - in -part of application No. 15 /097,855 ,    numeric , or both ) of any number of variables associated with
    filed on Apr. 13, 2016 , now abandoned , which is a    the data objects of interest. The graphical user interface may
    continuation of application No. 13 /942 ,145 , filed on    also provide for controls that enable manipulation of the data
    objects themselves and their representation in the three
    Jul. 15 , 2013, now abandoned , which is a division of    dimensional space. In some aspects , the graphical user
    application No . 13 /288, 660 , filed on Nov . 3 , 2011 ,    interface may provide for animations of the data objects ,
    now Pat. No. 8 ,606 ,672.    representing changes in values of the variables associated
(60 ) Provisional application No .61/410 ,237 , filed on Nov .    with the data objects over time to more efficiently convey
    4 , 2010 .    trend information .

    nomhuspeh**

Enne    Network

    a.rtisipas

    *

    -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

???????? ??????? ?????
Patent Application Publication    Apr. 5, 2018 Sheet 1 of12   US 2018/ 0096432 A1

    *????
    *
    *
    ?
    .
    FFIG

    ?1    •

    •? ??i??
    •
    -
    •??•
    ????

    ?????? ???
    ??????  **
    ???***4

    #
    &
    ?a

    ????
    Patent Application Publication    Apr . 5 , 2018 Sheet 2 of 12    US 2018/ 0096432 A1

    * - *- - *- * -* -*- * - *-* - *-* - *- - *- * * * *

    “ … … … … … … … … … …. www … … . … … … …
    .
    *
    ,
    ??

    , " } , " 1 ,?????????????
    *
    .

    - - - - - - -wwwt    / "," www.

    '

    |
    '
    ,    ???????????????

    …    -

    SS 222|
    ,
    ??

    MANYAMAMAMAMANYWAY
    APPYHHHHHHHHHHHHHATSAIN

    …
    …

    *

    CAS ?? ??
    *

    ; *-*- -* -*.…. .“    *. .-

  *

  ???    …
    .
    …
    .
    …
    .
    ??    ?
    .
    *

    *

    ???    .
    *

    ?    2
    .
    FIG
  ??
    *
    -

    ,   4,, , ,

    ??
    -

    -

    *
    -    .
    *

    HTTP :/   /   …    .

    yy
    .
    .
    www

    com
    www   www   wreture :    www    www .sine    a    more

    ??    ?
    “

    ?
    ?

come r c i a i s
 Patent Application Publication    Apr. 5 , 2018 Sheet 3 of 12    US 2018 /0096432 A1

    algow DOE
    O    - -4   .4    . 4 .4 . . 4 .4 . 4 . * . .

    ???
    1
    {

    }
    315    viai    .

    writRe-able   Lowaw
    AN?M RAUMAR t' W

    Ho
    $
    3004d320
    IUntserfeacre    YAWA
    FIG
    3
    .

    Buouy    AVRUV
    .ww
    VNN

    S4Y Y    uoneorunuwo   Interace    . . . . . .4   4 44

    * * * *.4 .   V . * * . * . * * *. . .
    .
    *   * * * * * ** * * *
    WON
    * * ** ** * * ** * * ** *

Patent Application Publication    Apr. 5 , 2018 Sheet 4 of 12    US 2018 /0096432 A1

    jueusang Advice
    *

    WAMS.YA
    410
    2012- 11

    anas    mom
    need
    to
    ensure
    * ** .. .    * . * . . * . * . . * . * . * . .* . * * . *    *    14 . . . .   Y   !

    44
    wwwwwwwwwwwwwwwwwwwwwwwww AS
    *

    *

    U

    U

    '

    .
    DVescritpoirn   un
    406
    *
    :

    44Y
    ?????
    {
    1
    $
    ???11
    }

    .

    .
    .

    .
    Wat

    w

    '
    *
    .
    -
    * ** * * * * *
    .

    - '. ' . . ' '

    we r
    *. . . * . * . * .    *    * *
    '    '

    .

    ?
    .
    ww
    wwwwwwww pos
    FRienqaunedsatl jual8sanulVariables   400    vQod0uosAe    wvwawvww*-wvwwwv    OuizunjeWON    ?

    ?
    4A
    AANADAA
    www
    .

    -
    -
    ?
    WOMAN
    ?
    WAMASAN
    * ***
    /
    19
    ***** *    * * ** * * * *    ** *
    w wwviwvwiw
    www
    ?

    Database
    ** * * * ** * * *
    Mission

Patent Application Publication    Apr. 5 , 2018 Sheet 5 of 12    US 2018 /0096432 A1

    Start
    '    ''''' '''''''' '
    $ 500
    Receive financial
    Request and    WW
    Investment
    w
    Valables
    vit
    -479-    *
    *

    2
    itir
    *
    .
    Al Variables    **** *07:
    ***
    Received ?    *****
    ****

    ***
    *
    ***** ******

    *

    *

    Generate Description
    Vectors
    *

    * **

    wwwwwwwwwwwwwwww
    FIG . 5    .. . * * * *    * * * * * * ** * . .. .    ..    ..
    ***
    S506
    Normalize Investment
    Variables
    wwwwwwwwwwwwwwwwwwwwwwwwwwang
    8508
    Calculato Similarity
    Value
    .
    Wwmiw    w

    w

    * *    *
    .

    Determine Investment
    W
    Advice
    ow    * * ** * * * * ** *
    wwww    *

    *    !!
    h
    *
    ithin    ?!    **
    *

    :
    .
    Additional    ***
    *

    ***
    Financial    *
    *    * * * wwwwwwwwwwwwwwwwwwwwas
    Requestshe    :- *.

    14tht

    * * ** ** * * * ** * * * * ** *    ***** * *

    ONS

Patent Application Publication   Apr. 5 , 2018 Sheet 6 of 12    US 2018 /0096432 A1

    600
    Receive selection of data point
    object(s )formodeling (e.g.,
    investments )602

    Obtain data formodeling data
    point object( s) 604
    wwwwwwwwlingen

    Receive definition of variable !
    metric for evaluating data point
    objeci(s ) 606

    Determine variable /metric for
    evaluating data point objectis )

    Son Additional    Yes
    variables metrics selected
    610
    No
    Determine target for each
    variablelmetric and associate as
    reference data point object 612
    Determine distance between
    data points /objects (and
    reference point object based on
    target s ) and variable /metrics)
    for each data point/object 614

    Translate data point/object(s)
    and reference point/object to 3D
    model space 616

    FIG . 6

Patent Application Publication    Apr. 5 , 2018 Sheet 7 of 12    US 2018 /0096432 A1

    Receive
    request for display
    of different information
    relating to at least one data
    point object
    702
    Yes
    mineralen Receive
    Obtain requested information    graphicalmodification of
    from database 704    data point/object
    708    No

    Display obtained data in 3D    Yes
    space 706    Determine new values of one or
    more variables/metrics based
    on graphicalmodification 710

    Access data object in database

    Modify and store new values in
    data objectbased on
    determined new values 714

    End 716

    FIG . 7

Patent Application Publication    Apr. 5 , 2018 Sheet 8 of 12    US 2018 /0096432 A1

    wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww    x
    Y

    --
    -*    »

    ---------    03
    83
    X3
    )
    ,
    (    --    -

    ~

    ---
    ---    ~

    - -- --- --- --- --- - -- --- -- - e me   e   re   o
    ~

    ~

    ~

    w w ww w w w w w w w w ww
    ~

    ~

    ~

    ~

    ~

    z1
    x1
    )
    ,
    {
    yi
    802
    -    )
    05
    ,
    85
    ~
    5
    (
    ~

    ~

    ~
    .
    8
    FIG
    ~

    ~

    810
    -
    ~

    ~

    ~

    ~

    -
    -
    -
    -

    -
    --*
    *
    *
    *
    804)
    02
    ,
    92
    ,
    x2
    (    )
    Ø4
    84
    ,
    x4
    (    ~

    ~

    ~

    kawe
    wa    w    ewa    ww www    www .   sa -    ine w

    800

Patent Application Publication    Apr. 5 , 2018 Sheet 9 of 12    US 2018 /0096432 A1

    -    - - -- - - -    -- - - - - - -    -- -   -- -    -    -- - -    - - -- - - - - ti    --
    -
    -

    -    -

    -
    -

    -
    -
    -    -

    -
    -
    -
    -    -

    -
    -    -    -

    -
    218
    _
    Q    218
    Q    -
    -
    -

    -
    -
    -
    -

    -

    -
    -
    --
    -
    -
    --
    -
    -
    --
    -
    -
    812
    %    FIG
    9
    .
    -
    -

    -    -
    -
    .www
    908
    .    ww    de
    208    6
    812    w
    .

    -
    -
    808QQ018248
    www.
    *
    8127
    900RROOOOOOOOOOO0O0oo90o0oPogostoprodogodowod
    w

    218
    -Q    -
    -

    -

    wwe
    -

    -

    --    w    w    w
    808
    Q
    &
    pogo
    - - - - --   - - -21a
    -- -    -   -- - -    --
    - -- -- mmw--
    -
    --
    --
    -    Q

    -
    -
    ---
    --
    --
    --
    -218    8087
    O    .

    800

Patent Application Publication    Apr. 5 , 2018 Sheet 10 of 12    US 2018 /0096432 A1

    ++   - - - ww    wtut    w w    - * *    *   ww    w    -    *    - - . - . we

    w

    }
    1
    018
    -    ere
    h

    -
    -    -
    -
    -
    -
    -com
    ww
    -
    -
    -    O
    Zoom    -

    -    .
    -    *
    *
    **
    -
    .
    -

    -    .
    -
    .
    -.
    *
    •
    -
    *
    **
    FIG
    10
    .
    -

    *
    *
    alimen    wwwwww    ww    ww    - -    --   --   www    810
    0
    -
    -
    -

    -
    -    -    -

    VARTAL
    *

    .

    am
    .

    RIVALLAVILA
    -

    w

    V ** ***
    l

    ro-
    -- - - -    --    --    -    -- -    .

    popooooooooooodooodoomodogopao    w    w    www -   2 -    .

    -
    --
    -
    --
    -
    -
    -
    8047
    -
    -*
    *- -ten
    -
    -    pod

    800

Patent Application Publication    Apr. 5 , 2018 Sheet 11 of 12    US 2018 /0096432 A1

    ?? ?? ? ??    ?    ?    ?? ?? . ?? ?? . ??    -    -    .    .    -    - -- - - - -
    €o*
    *--
    908    -*
    *
    ----
    -man
    -*
    *
    **
    ,    *
    *
    *

    -
    ------wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
    ?

    ww ww w    ?

    ?

    ?

    ?

    ?

    ?

    ?
    806278
    ?

    ?

    ?

    ?
    802
    -    )
    0
    ,
    x
    (
    ?

    ?

    ?

    810a    FIG
    .
    11
    804a
    8106
    ?

    ?

    ?

    wwww    ???

    .--
    -
    -
    -
    ---804
    1808
    ..
    .
    ww
    f    - - -- - - - - -- - -- - - - - - - - - - - -- -    - - - - - - - - - - - - - - - - - - - - - -- - - - - -- 808am
    800

Patent Application Publication    Apr. 5 , 2018 Sheet 12 of 12    US 2018 /0096432 A1

    -

    camaa
    -----
    -    *
    **
    -

    -

    --    *    -

    -

    --les-    -    - - - - - - - - -- *    - - -- - -    -    -    -    -   -- -- - -- -
    -
    -

    -
    -

    -

    -

    -

    -

    -

    ww w w
    w
    -
    -
    802
    12
    .
    FIG

    800
    4*i
    are
    *

    •   •   •    •   •    •   •    •
    804
    •    •    •    •   •   •   •    •    •    •    •   •   •   •    •
    808    - -- - --    -- -wwwwww
    To ls Pan Rotate Zoom MoveStart40men 1212-20SetPointofView
    1208
    Resize
    Configuration Configuration Configuration
    Variable 1214 Animation 1216 Disaptlay 1218
    -1204 1206 1210
    1202
 1200

US 2018/0096432 A1    Apr. 5 , 2018

    METHODS AND SYSTEMS FOR    the future . In addition , a need exists for more useful sports
    REPRESENTING RELATIONAL    information analysis and a way to access and represent that
    INFORMATION IN 3D SPACE    analysis .
    CROSS REFERENCE TO RELATED    SUMMARY
    APPLICATIONS    [0006 ] In order to solve at least the above -noted problems,
[0001] This application is a continuation - in -part applica    the present advancement relates to information processing
    apparatus and associated method for analyzing investment
tion of U .S . patent application Ser. No. 15 /097 ,855 filed Apr.    information relating to a financial indicator. An input unit
13 , 2016 , which is a continuation application of U . S . patent    receives a financial request and one or more investment
application Ser. No . 13 / 942 , 145 filed Jul. 15 , 2013 , which is   variables relating to the financial indicator and a description
a divisional of U . S . patent application Ser. No . 13 /288,660 ,    vector unit generates at least two vectors containing the one
filed Nov . 3 , 2011 , now U . S . Pat. No . 8 ,606 ,672 , which is    or more investment variables based on the financial request.
based upon and claims the benefit of priority from the U . S .    A description vector similarity unit then calculates a simi
Provisional Application No . 61/410 ,237 , filed on Nov. 4 ,    larity value by comparing the at least two vectors and an
2010 ; the entire contents of all the above-listed priority    investment analysis unit analyzes the similarity value and
documents of which are incorporated herein by reference .    the financial request, and determines investment advice
    based on results of the analysis .
    FIELD    [0007] In some aspects, the data and analysis associated
[0002] The embodiments discussed herein relate to a    with the data may be graphically represented via a fully
method and system for analyzing and displaying information    customizable and configurable graphical user interface . In
 graphically . More specifically , a method and system that    some implementations, the data may include financial data .
provides comparisons , via a three or more dimensional plot    In other implementations, the data may include other types
or virtual reality environment, of information , such as    of data , such as sport related information (player stats,
    fantasy league, etc . ). The user interface may represent the
investment or sports information , based on an analysis of the    data in three dimensional ( 3D ) space , for example via a
information is described .    display device or virtual reality or augmented reality device
    or devices . Each axis of the 3D space defines or represents
    BACKGROUND    one or more variables of interest. In some cases, more than
10003] Financialmarkets , such as the stock market, pro    one variable may be represented by a single axis , such that
vide a vehicle for consumers to make financial investments    values of the two or more variables may be combined . In one
with the hope of monetary gain . For example, stocks of a    example , an ideal value ( e . g ., for comparison , as a goal, etc.)
corporation purchased by a consumer can provide monetary    for a number of selected variables may be obtained . These
gains for the consumer if the stock value increases over time.    values may be graphed or plotted onto a 3D plane , such as
Before making an investment in the stock market, a con    a 3D grid or space . Values of interest, such as investment
sumer should undertake a considerable amount of time to    assets or opportunities, may be obtained , such as for
research the investment. However, consumers are easily    example , from one or more databases, or via other means .
overwhelmed by the amount of factors that can be taken into    These values may also be graphed or plotted in the 3D space .
account when attempting to make a smart investment deci    The values may then be compared to the ideal value , and a
sion and may only wish to focus on customized factors that    vector representing the difference may be generated. The
are most relevant to a consumer ' s portfolio needs. Further,    vector may define the distance of the values to the ideal
it is difficult for consumers to determine the risk and reward    value , both in the 3D space and in the parent N -dimensional
levels of various investments as well as the similarity and/ or    space . The data , and more specifically the relative value of
differences between various investments based on these    multiple variables may be more readily graphically repre
    sented and visually understood , via the relative distances
factors .    between points in the 3D space . Information , such as relat
10004 ) Financial markets can also be extremely volatile    ing to financial investments, sports teams performance, and
which can result in sudden losses with respect to a consum    other data may find particular applicability with the
er 's investment . This sudden loss can cause the consumer to    described systems and methods.
dispose of the investment regardless of potential future    [0008 ] In some aspects, four dimensions may be repre
gains. For example , a consumermay notice a sudden drop in    sented and visualized in the three dimensional space, via
a stock price and proceed to sell the stock to avoid further    changing of the values of interest ( and in some cases, also
losses . However, the stock price over a longer period of time    the ideal value ) in the space , e . g ., via movement within the
may show a significant increase thereby resulting in a    three dimensional space . The fourth dimension may repre
missed opportunity by the consumer for long - term monetary    sent time, or any other variable or combination of variables .
gain .    In some aspects , the three or more dimensional display may
[0005 ] A need exists for a method and system for analyz    be displayed , controlled , and/ or manipulated using virtual
ing investment information that allows a consumer to gen    reality or augmented reality . Controls may be provided that
erate customized investment analysis and advice based on a    navigate through the 3D space , for example based on
variety of factors identified by the consumer. Further, a need    gestures .
exists for providing risk and reward information as well as    [00091 In some examples, more dimensions may be rep
comparison information between investments based on the    resented via other visual indicators , such as different colors ,
above -noted factors in a way that intelligently informs a    shapes , textures, line dashing, flashings , and so on . In some
consumer of investment value in the past, present and into    cases, selecting or hovering over a data point (representing

US 2018/0096432 A1    Apr. 5 , 2018

a value of interest), for example that represents a potential    [0016 ] FIG . 3 is a schematic drawing of a mobile device
investment, may display additional information of the    according to an exemplary embodiment of the present
investment. In some examples, selection or touching of a    advancement;
data point may reveal more information , expand its view ,    [0017 ]. FIG . 4 is a functional drawing of the investment
contract its view , turn it on its axis to reveal other informa    analysis system according to an exemplary embodiment of
tion about the data point, change its color, size , brightness,    the present advancement;
contrast and other characteristics to reveal information about    [0018 ] FIG . 5 is an algorithmic flow chart of analyzing
the data point. In some cases , each data point may have or    investment information according to an exemplary embodi
be associated with different touch points that do different    ment of the present advancement.
things - for example touch a stock ' s representation from the    [0019 ]. FIG . 6 is a flow diagram illustrating an example
left and it does/ shows one piece of information or metric , but   process for graphically representing data including a number
touch it from the top and it does or shows another piece of    of values in a multi-dimensional space .
information , metric , etc .    [0020 ] FIG . 7 is a flow diagram illustrating an example
[ 0010 ] In some aspects , the user interface may provide    process for modifying data through graphicalmodifications
controls to expand the field of view to see more detail about    in a multi - dimensional.
a data point or group of data points, such as a stock or group    10021 ] FIGS . 8 - 11 illustrate example multi-dimensional
of stocks, based on user movements , such as moving hands    spaces for representing multiple values.
or arms apart in some given volume of space (breaststroke    [0022 ] FIG . 12 illustrates an example display of a multi
outwards ) . The user interface may also provide controls to    dimensional space, representing multiple values, with user
contract the field of view to see more data points or stocks    interface controls for manipulating the multi -dimensional
in less detail based on user movements , for example by    space .
movement of arms or hands in a reverse breaststroke .    DETAILED DESCRIPTION
[ 0011 ] In some examples, 3D or virtual reality controls
may include projecting “ touch pads” or other control objects    [0023] In the following , the present advancement will be
on the walls/ceilings/floor or even in the volume of a room    discussed by describing a preferred embodiment with ref
that allow a user to manipulate the data and the perspective    erence to the accompanying drawings . However, those
of the 3D space . By using an entire room ( e. g ., and office ,   skilled in the art will realize other applications and modifi
conference room , or other physical room ), for example , as a    cations within the scope of the disclosure as defined in the
VR platform , detailed examinations ofmultiple investments    enclosed claims.
made be made simultaneously, including the relations    [0024] In embodiments, any desired network configura
between them . In other cases, any amountof physical space    tion , hardware , programming architecture , or a combination
may be used to represent the data in VR ( e . g ., a space of a    of both may be used to implement a system for analyzing
pre - defined , but located outside). In one example , these    investment information .
controls may include virtual " keyboards," or other similar    [0025 ] FIG . 1 is a schematic diagram of a system for
controls that can detect user movements ( e . g ., projecting a    analyzing investment information according to an exem
laser image of a keyboard onto a tabletop ).    plary embodiment of the present advancement. In FIG . 1 , a
[0012 ] In some aspects , the user interface may provide for    computer 2 is connected to a server 4 , a database 6 and a
controls to add other attributes to a point in the 3D space ,    mobile device 8 via a network 10 . The server 4 represents
such as stock information . For example , this may include    one or more servers connected to the computer 2 , the
making stocks that trade easily feel be light and stocks that    database 6 and the mobile device 8 via the network 10 . The
trade with difficulty feel heavy - e .g., easy to push /pull    database 6 represents one or more databases connected to
versus a bit harder to push /pull in VR , in manipulating or    the computer 2 , the server 4 and the mobile device 8 via
navigating through the 3D space .    network 10 . The mobile device 8 represents one or more
    mobile devices connected to the computer 2 , the server 4 and
    BRIEF DESCRIPTION OF THE DRAWINGS    the database 6 via the network 10 . The network 10 represents
    one or more networks, such as the Internet , connecting the
[0013] A more complete appreciation of the present    computer 2 , the server 4 , the database 6 and the mobile
advancements and many of the attendant advantages thereof    device 8 .
will be readily obtained as the same becomes better under    10026 ] The server 4 , the computer 6 and /or the mobile
stood by reference to the following detailed description    device 8 can be utilized as a central hosting site for the
when considered in connection with the accompanying    investment analysis system . Users of the computer 6 and
drawings. However, the accompanying drawings and their    mobile device 8 can also access the investment analysis
exemplary depictions do not in any way limit the scope of    system on the server 4 via network 10 . Accordingly , the
the advancements embraced by this specification . The scope    server 4 may notify users of the investment information
of the advancements embraced by the specification and    through the network 10 to the computer 6 or mobile device
drawings are defined by the words of the accompanying    [0027 ] Next, a hardware description of the information
claims.
    processing apparatus for analyzing investment information
[0014 ] FIG . 1 is a schematic diagram of a system for    according to exemplary embodiments is described with
analyzing investment information according to an exem    reference to FIG . 2 . In FIG . 2 , the information processing
plary embodiment of the present advancement;    apparatus includes a CPU 200 which performs the processes
[0015 ] FIG . 2 is a schematic diagram of an information    described above. The process data and instructions may be
processing apparatus according to an exemplary embodi    stored in memory 202 . These processes and instructions may
ment of the present advancement .    also be stored on a storage medium disk 204 such as a hard

US 2018/0096432 A1    Apr. 5 , 2018

drive (HDD ) or portable storage medium or may be stored    f0034 ] The general purpose storage controller 222 con
remotely . Further, the claimed advancements are not limited    nects the storage medium disk 204 with communication bus
by the form of the computer - readable media on which the    224 , which may be an ISA , EISA , VESA , PCI, or similar, for
instructions of the inventive process are stored . For example ,    interconnecting all of the components of the information
the instructions may be stored on CDs, BLU -RAY,DVDs, in    processing apparatus. A description of the general features
FLASH memory, RAM , ROM , PROM , EPROM ,    and functionality of the display 212 , keyboard and /ormouse
EEPROM , hard disk or any other information processing    216 , as well as the display controller 210 , storage controller
device with which the information processing device com    222 , network controller 208 , sound controller 226 , and
municates, such as a server or computer.
mi    general purpose I/O interface 214 is omitted herein for
10028 ]. Further, the claimed advancements may be pro    brevity as these features are known .
vided as a utility application , background daemon , or com    [0035 ] FIG . 3 is a block diagram of the mobile device 8 .
ponent of an operating system , or combination thereof,    The mobile device 8 , which may be a smart phone such as
executing in conjunction with CPU 200 and an operating    an iPhone from Apple , Inc. of America , includes a processor
system such as Microsoft Windows 7 , UNIX , Solaris,    320 used to control the functions of the mobile device 8 and
LINUX , Apple MAC -OS and other systems known to those    to run applications thereon , such as an electronic address
skilled in the art .    book , internet browser, etc . Processor 320 may be an ARM
[0029] CPU 200 may be a Xenon or Core processor from    processor or a processor such as a Core 2 Duo from Intel
Intel of America or an Opteron processor from AMD of    Corporation of America . Alternatively , Processor 320 may
America , or may be other processor types that would be    be implemented on an FPGA, ASIC or using discrete logic
recognized by one of ordinary skill in the art. Alternatively ,    circuits, as would be recognized by one of ordinary skill in
the CPU 200 may be implemented on an FPGA , ASIC , PLD    the art.
or using discrete logic circuits, as one of ordinary skill in the   [0036 ] A user interface 310 , which may include a micro
art would recognize . Further, CPU 200 may be implemented    phone, speaker, touch screen , keyboard or any combination
as multiple processors cooperatively working in parallel to    thereof, allows the processor 320 to receive input from a
perform the instructions of the inventive processes described    user of the mobile device 300 , and a display 315 provides
above .    feedback to the user . Display 315 may be a color or
[ 0030 ] The information processing apparatus in FIG . 2    monochrome LCD display or any other display that would
also includes a network controller 208, such as an Intel    be recognized by one of ordinary skill in the art.
Ethernet PRO network interface card from Intel Corporation    [0037] Mobile device 8 also includes a communication
of America , for interfacing with network 10 . As can be    interface 305 and antenna 335 to communicate with other
appreciated , the network 10 can be a public network , such as    devices, such as the server 4 or another mobile device 8 .
the Internet, or a private network such as an LAN or WAN    Further, mobile device 8 may communicate with these other
network , or any combination thereof and can also include    devices wirelessly using the cellular network ( including
PSTN or ISDN sub -networks. The network 10 can also be    EDGE, 3G , 4G , etc .,) a WiFi connection , a Bluetooth
wired , such as an Ethernet network , or can be wireless such    connection or any other wireless form of communication
as a cellular network including EDGE , 3G and 4G wireless    that is known. Mobile device 8 may also communicate
cellular systems. The wireless network can also be WiFi,    through a wired connection to communication interface 305 ,
Bluetooth , or any other wireless form of communication that    such as a USB connection .
is known.    10038 ] In some embodiments, mobile device 8 includes
 [0031 ] The information processing apparatus further    read -only memory , ROM 330 , to store low -level functions
 includes a display controller 210 , such as a NVIDIA    and processes necessary to support core functionality, and
GeForce GTX or Quadro graphics adaptor from NVIDIA    re -writable memory 325 , which stores an operating system ,
Corporation of America for interfacing with display 212 ,    drivers , applications, application data and user data . Re
such as a Hewlett Packard HPL2445w LCD monitor. A    writable memory 325 may be dynamic or static random
 general purpose I/O interface 214 interfaces with a keyboard    access memory (RAM ), FLASH memory , EEPROM
and/ or mouse 216 as well as a touch screen panel 218 on or    memory , and the like . Further, portions of the re -writable
separate from display 212 . General purpose I/O interface    memory 325 may be removable .
also connects to a variety of peripherals 220 including    [ 0039 ] For example , re -writable memory 325 may store an
printers and scanners, such as an OfficeJet or DeskJet from    application for communicating with server 4 to identify
Hewlett Packard .    mobile device 8 and to provide the server 4 with access to
[0032 ] In some aspects display controller 210 may be    data stored therein . Such application may be downloaded ,
designed to interface with display 212 and/ or one or more    via any of the communication methods described above ,
other peripheral devices 220 such as virtual reality (VR ) or    from the server 4 , from a software repository or from an
augmented reality devices. These may include devices made    online store , such as the App Store from Apple, Inc . of
by various different companies . As will be described in    America . Further, such an application may be an electronic
greater detail below , display controller 220 and /or other    address book , or electronic personal information manager
components of the system of FIG . 2 may be configured to    (PIM ). However, the application may also be a plug- in for an
extract and manipulate data to create new data useful for    electronic address book or PIM already installed on mobile
displaying graphical representations of the data and various    device 8 , a background application , driver and the like .
relationships between the data .    [0040 ] As one of skill in the art would recognize , the
 [0033] A sound controller 226 is also provided in the    above descriptions of the server 4 and mobile device 8 are
 information processing apparatus , such as Sound Blaster    merely examples and other server configurations and mobile
 X - Fi Titanium from Creative , to interface with speakers /    devices may be used without departing from the scope of the
microphone 228 thereby providing sounds and /or music.    present advancements .

US 2018/0096432 A1    Apr. 5 , 2018

[0041] According to some embodiments, a “module ”    keep calculations consistent. More information with respect
refers to hardware architecture or one ormore programming    to the normalizing unit 404 is provided with respect to FIG .
architectures, or a combination of both , configured to per
form one or more designated functions.    [00461 The description vector similarity unit 406 calcu
[ 0042 ] FIG . 4 describes the functionality of the investment    lates the similarities between description vectors created by
analysis system according to one embodiment of the present    the description vector unit 402 and normalized by the
    normalizing unit 404 . As described later , at least one way to
advancement. FIG . 4 illustrates investment variables and a    determine the similarity between description vectors is to
financial request 400 , the database 6 , the server 4 , the    calculate the Euclidean distance between the description
investment advice 410 , a description vector unit 402, nor    vectors. However, another metric for determining the simi
malizing unit 404 , description vector similarity unit 406 and    larity is to use an absolute value metric or any other metric
an investment analysis unit 408. The description vector unit    defined by the user of the investment analysis system . The
402, normalizing unit 404 , description vector similarity unit    results of the description vectors similarity unit are then
406 and an investment analysis unit 408 are illustrated    transmitted to the investment analysis unit 408 .
within the server 4 but in other embodiments could be    [0047] The investment analysis unit 408 analyzes the
included within the computer 6 or the mobile device 8 .    results of the description vector similarity unit 406 to
Investment variables and a financial request 400 relating to    provide the user with investment advice based on the
an investment, or financial indicator, are received from a    investment variables and the financial request 400 defined
user depending on the investment information the user wants    by the user. To do this , the investment analysis unit 408
to obtain . Example investment variables 400 include P /E    compares similarity information from the description vector
ratios, debt to equity , total sales, and temporal resampled    similarity unit 406 based on what type of investment infor
risk . The financial request represents a request from the user    mation the user is interested in obtaining for his or her
to obtain certain financial information . A variety of non    portfolio . Non - limiting examples of investment information
limiting examples of financial requests are described in    include a list of a best or worst investments , a comparison
detail later. The investment variables and financial request    of investments, and risk and reward information . More
400 are then transmitted to the server 4 via the network 10    information on the investment information determined by
as described in FIG . 1.    the investment analysis unit 408 is described later with
 [0043] The description vector unit 402 of the server 4    respect to FIG . 5 .
defines a description vector based on the investment vari    10048 ] The investment advice 410 of the investment
ables and the financial request 400 . The description vector    analysis unit 408 are provided to the database 6 to be stored
can represent a multidimensional point in multidimensional    for possible later analysis and are provided to the user via at
space and contains the investment variables 400 . The    least a computer 2 or mobile device 8 as described in FIG .
description vector defines what type of investment informa
tion , such as risk or reward information , the user is seeking    [0049 ] FIG . 5 is an algorithmic flow chart of analyzing
to obtain for his or her portfolio needs. More information    investment information according to an exemplary embodi
with respect to the description vector is provided later with    ment of the present advancement. The process of analyzing
respect to FIGS. 5 and 6 .    investment information starts at step S500 by having a user
    input a customized ranking of factors , or investment vari
10044 ]   The normalizing unit 404 of the server 4 normal    ables 400 , relating to the investment (ple ratios, debt to
izes all of the investment variables 400 of the description    equity , etc ), and a financial request 400 . The system then
vector defined by the description vector unit 402 . Normal    determines whether all the variables have been received at
ization is required so that all of the investment variables 400    step S502 . If NO at step S502 , the system continues to
have an equal weight with respect to each other when    accept investment variables 400 until the user has finished .
investment calculations are performed . One type of normal    If YES at step S502 , the system proceeds to step S504 to
ization is 1/N , where N is the number of investment vari    generate a description vector based on the investment vari
ables 400 . Another type of normalization is to use the    ables and the financial request 400 .
standard deviation of all the information in database 6 . For    [0050 ] The description vector DV generated by the
this type ofnormalization , the information analyzing system    description vector unit 402 is defined as follows. DV = ( si ,
calculates the standard deviation for each investment vari
able 400 contained in the database 6 and then divides the    s2 , s3 , . . . , sn ), where sl through sn are investment variables
investment variable 400 of the particular investment by the    400 that describe an investment or benchmark in question .
standard deviation . For example , if the user selects IBM as    Therefore , if the user wanted to measure the risk of a single
a particular investment and chooses the P / E Ratio as one of    stock and determines that the most important factors are the
the investment variables 400 , the investment analysis system    ple ratio , the 21 day resampled risk of the maximum
locates all of the P / E Ratios in the database 6 , calculates the   drawdown exceeding 10 % , and the Quick Ratio , then the
standard deviation , and then divides the P / E Ratio of IBM by    description vector for this particular stock , i.e . for this
the standard deviation to obtain a normalized value.    particular calculation , would be an “ Investment Risk Vec
    tor " defined as IRV = (ple ratio , 21 day resampled risk of the
[ 0045 ] The present advancement, however, does not    maximum drawdown exceeding 10 % , Quick Ratio ). A cor
require the input investment variables to be equally    responding “ Benchmark Risk Vector” would be defined as
weighted . As long as the sum of all the normalization    BRV = (p / e ratio , 21 day resampled risk of the maximum
weights is 1, different investment variables 400 could have    drawdown exceeding 10 % , Quick Ratio ). While both vec
different weights . Any additional description vector being    tors contain the same investment variables 400 , the values of
compared to the description vector defined by the descrip    the investment variables 400 will likely be different based on
tion vector unit 204 would also have to be normalized to    the corresponding value of each investment variable 400 in

US 2018/0096432 A1    Apr. 5 , 2018

the database 6 with respect to the investment or benchmark .    formance of a security , mutual fund or investment manager
Once the description vector is defined , the process proceeds    can be measured . Generally , broad market and market
to step S506 to normalize each of the investment variables    segment stock and bond indexes are used for this purpose .
400 .    For example, the Benchmark could be a recognized bench
[0051] The investment variables 400 must be normalized    mark like the S & P 500 , it could be a sector index , it could
to ensure they each provide the appropriate amount of    be an ETF , or it could be some custom composite created by
weight to the investment analysis calculations. For example ,    the user.
the absolute value of a ple ratio is generally in the tens or    [0055 ] The Investment Reward Vector IReward is defined
twenties. The absolute value of a 21 day resampled risk ,    as follows. IReward = ( IReward1 , IReward2 , IReward3, . . .
however, is between zero and 1 . If the two variables were not    , IRewardn ), where the investment variables 400 are vari
normalized, then any future calculation would be almost    ables that the user thinks affect the expected return of the
entirely dominated by the p / e ratio .    investment. The investment could be for a stock , a portfolio ,
[0052] One option is for the user to specify how to    or a mixed bag of various kinds of investments . It should be
normalize each variable based on the user ' s needs. However ,    noted that the Investment Reward Vector should not be the
a natural, default, normalization for each piece of data is    same vector as Investment Risk Vector IRisk . The Invest
supplied for the ease of the user. As noted above, one such    ment Risk Vector IRisk represents what the user thinks of as
natural normalization is to use the standard deviation of all    the financial information that goes wrong, or might go
such pieces of information in the database 6 . So , for    wrong, or that which indicates an elevated level of risk .
example , if the user requested analysis on a particular stock ,    IReward represents that financial information which the user
and the user ' s choices were the ple ratio , the p / s ratio , and   thinks might go right thereby providing a favorable return
the chance of a 5 day maximum drawdown exceeding 5 % ,    for the user.
all the ple ratios would be located in the database 6 , their    [0056 ) The Benchmark Reward Vector is defined as fol
standard deviation would be calculated , and then that par    lows. BReward = (BReward1 , BReward2 , BReward3, . . . ,
ticular stock ' s ple ratio would be divided by this standard
deviation . Then all the p /s ratios would be located in the    BRewardn ) where the investment variables 400 correspond
    to the investment variables 400 defined in the Investment
database 6 , their standard deviation would be calculated , and    Reward Vector IReward if the Benchmark and the Invest
this stock 's p /s ratio would be divided by that standard    ment Reward Vector IReward are being compared . It should
deviation . This process is repeated until all the investment    be noted that BReward represents the “ ideal” investment
variables 400 of the description vector are normalized .    according to the user. For example , if the user is a stock
[0053] Returning to the description vector, non - limiting    investor and is interested in value, the user may think the
examples of the description vector include an Investment    best kinds of investments are those where the ple ratio is less
Risk Vector , Benchmark Risk Vector, Investment Reward    than 10 , the price /book is less than 1 , the current ratio is
Vector and an Benchmark Reward Vector. The description    greater than 1 , and the profit margin is greater than 5 % .
vector can also be any other vector chosen by the user. As    Thus, the user would create a BReward with those four
such , the names “ Benchmark Risk Vector” , “ Benchmark    investment variables 400 and normalize the investment
Reward Vector ” , “ Investment Risk Vector ” and “ Investment    variables 400 . A comparison of proposed investments to this
Reward Vector” are for convenience and the user is free to    “ ideal” investment will be described later.
specify any number of vectors with customized naming
conventions so as to make whatever comparison the user    [0057 ] Returning to FIG . 5 , after the investment variables
sees fit between whatever instruments , portfolios or groups    400 have been normalized at step S506 , the similarities
the user wants . The Investment Risk Vector IRisk is defined    between the description vectors are calculated at step S508 .
as follows. IRisk = ( IRisk1, IRisk2, IRisk3 , . . . , IRiskn ),    There are differentways of defining a similarity between two
where IRisk1 through IRiskn are the normalized investment    description vectors . One option is to take the Euclidean
variables 400 that describe the investment in question . For    distance between two multidimensional vectors generated
example, IRiskl= p / e ratio , IRisk2 = 21 day resampled risk ,    by the description vector unit 402 . This would be repre
IRisk3 =total sales of company/total sales in industry , etc , to    sented by , for example, ||IRisk -Brisk || or ||IReward
IRiskn . Alternatively , IRisk1 = 5 day resampled risk ofmaxi    BReward?, which represents taking each normalized invest
mum drawdown > 5 % , IRisk2 = chance of hitting a fixed stop    ment variable 400 from each description vector generated by
loss of 3 % over a one month period , etc , to IRiskn . The    the description vector unit 402, subtract one from the other,
investment could be anything from an individual financial    square the result , sum them together, and take the square
instrument such as a stock , to a group of financial instru    root. For example , to calculate the risk of an investment, the
ments such as a group of stocks , to an entire investment    following calculation is performed : (IRisk1 - BRiski)^ 2 +
portfolio made up of any number of financial instruments    (IRisk2 - BRisk2)^ 2 + (IRisk3 - BRisk3) ^2 + . . . + ( IRiskN
such as stocks, bonds , mutual funds, commodities, options,    BRiskN ) 2 . The square root of the resulting sum is then
OTC derivatives , currencies , contingent claims, derivatives ,    calculated to obtain the similarity value.
balance sheet items, options , futures, exchange traded    [0058] Another method of calculating the similarity is by
instruments , and over the counter instruments.    using an absolute value similarity metric . Using the absolute
[0054] The Benchmark Risk Vector Brisk is defined as    value metric , each normalized investment variable from
follows. BRisk = (BRiski, BRisk2 , BRisk3 , . . . , BRiskn )    each description vector generated by the description vector
where BRiskl through BRiskn are the same investment    unit 402 is subtracted from one another and the resultant
variables 400 as IRisk1 through IRiskn , but for the Bench    values are added to obtain a distance between the description
mark rather than the Investment if the Benchmark Risk    vectors . The absolute value of the distance is then deter
Vector BRisk is used in comparison to the Investment Risk    mined to obtain a similarity value . For example , to calculate
Vector. A Benchmark is a standard against which the per -    the risk of an investment, the following calculation is

US 2018/0096432 A1    Apr. 5 , 2018

performed :    |(IRisk1 - BRisk1)1 + ( IRisk2 - BRisk2)1+ 1    investments are then ranked by the equation “ (1 /reward
(IRisk3 -BRisk3)I + . . . + (IRiskN -BRiskN )I.    value)/( risk value)” to determine the better investments.
[0059] It should be noted that when more variables are    [0065 ] A user can also build a portfolio with an optimal
added , the absolute value of the result will increase . While    risk /reward . In this case , an optimization routine would find
the results for each calculation will be unaffected by this , it    the portfolio that maximized the “ ( 1/reward )/risk ” ratio
might cause some confusion to a user. Therefore , one    subject to user defined constraints . The user defined con
non - limiting example to keep intuition correct from one    straints can represent certain filters within a portfolio with
similarity calculation to the next for the user, is to divide    respect to the investment information . For example , the user
each “ similarity ” result by VN , where N is the number of    could define constraints such that no single investment can
variables in the vector.    have more than a 10 % weight in the portfolio , the top 5
[0060 ] Investment advice is then determined by the invest    investments must account for at least 25 % of the totalweight
ment analysis unit 408 based on the results of step S508 and    in the portfolio , currencies must represent a fraction between
 the types of description vectors compared . Provided below    3 % and 5 % of the portfolio , and gold must represent
are non-limiting examples of investment advice determined    between 1 % and 3 % of the portfolio . To define best port
by the investment analysis unit 408 based on a variety of    folio , similarity to a benchmark is used for optimization .
financial requests 400 received that relate to investment    [0066 ] In other words, for a portfolio , there would be a
information . For example , upon receiving a financial request    weight (wi) for each investment. Each variable that went
to identify the risk of an investment, the investment analysis    into either the investment risk vector or the investment
system calculates the similarity between the investment risk    reward vector would be weighted by that weight ( wi) as
vector and the benchmark risk vector. For this analysis , the    follows:
greater the number calculated from the similarity between    [0067] IReward =w1* IRewardV1+ w2* IRewardV2 +
the investment risk vector and the benchmark risk vector, the    w3* IRewardV3 and so on , with the sum of the w 's = 1, where
higher the risk of the investment.    each of the IRewardV 's is a vector. BReward is set to the
[0061] An investment comparison can also be calculated    user 's idea of the ideal investment . IRisk = w1* IRiskV1 +
to provide the user with information on how the current    w2 * IRiskV2 +w3* IRiskV3 and so on , while having the same
investment compares to an ideal investment. An ideal invest    w ' s as IReward . An optimization routine to maximize
ment is a predefined investment by the user based on the    ( 1/|||Reward -BReward||)/(|||Risk - BRiskl) by varying the
user ' s financial requirements . This is determined by calcu    w 's , subject to constraints, would then be used to rank the
lating the similarity between the investment reward vector    various investments based on the user constraints .
and the benchmark reward vector. For this analysis, the    [0068 ] In another example according to the present
smaller the number calculated from the similarity between
the investment reward vector and the benchmark reward    advancement, when trying to choose amongst 10 stocks that
vector, the closer the current investment is to the ideal    have been identified via a stock screen or some other
    associated method, it is important to know which of these
investment and therefore the better the current investment.    stocks gives the most return with respect to the risk . If it is
[0062] For a given group of investments, a list of the best    believed that the best stocks have Earnings Growth in the
and worst investments out of the group can be calculated .    current quarter of50 % to 75 % , Annual earnings growth over
This list is determined by calculating the risk and reward for    the last 3 years of 15 % - 25 % , and as close to new highs as
each investment in the database 6 . Next, for each invest    possible , the BReward vector is defined as “ 62 .5 /normal
ment, the ratio " (1/ reward )/(risk )” is calculated and the    ization (investment variable , ), 20 /normalization (investment
investments can be ranked by this number. Accordingly , the    variable ,), 0 /normalization ( investment variablez).” The
investments with the highest ranks are the best and the    value 62.5 represents the midpoint of 50 to 75 , the value 20
investments with the lowest ranks are the worst. The best or    represents the midpoint of 15 % -25 % , and 0 represents a
worst investments can be any type of investment meeting    stock trading at a new high , ie, (( current price -highest
predetermined constraints by the user. For example , a best    price )/current price )/ normalization (investment variablez).
investment could be one which makes the most short term    The same process is then repeated for each of the ten stocks
gain whereas the worst investment could be one with the    to get their IReward vectors . The ten distances, or similarity
quickest loss short term .    values, are then calculated as dReward1 through dReward10
 [0063] Alternative investments that have a similar risk    by obtaining the reward similarity values between IReward1
profile to the current investment can also be calculated . This    and BReward1 , IReward2 and BReward2 and so forth
analysis is performed by calculating the risk for all the    through IReward10 and BReward10 .
investments in the database 6 and finding those investments    [0069] Similarly, if it is believed that the most worrisome
with a risk value that is closest to the risk value of the current   risks are such concerns as the risk that this stock will fall
 investment. Similarly, alternative investments that have a    more than 10 % in the next week , the probability that this
similar reward profile to the current investment can also be    stock will hit a stop loss placed 15 % away, and the risk that
calculated . This analysis is performed by calculating the    this stock will fall more than 20 % from a purchase price at
reward for all the investments in the database 6 and finding    any time over the next year, the IRisk vector is defined as the
those investments with a reward value that is closest to the    normalization of the above noted risk values . Further, the
reward value of the current investment.    BRisk vector with respect to the Benchmark i. e . the S & P
[0064 ] For a user interested in one investment, better    500 contains the same investment variables 400 . Again , the
investments with similar risk profiles can be calculated .    ten distances , or similarity values, are then calculated as
First, and as explained above , all other investments that have    dRiskl through dRisk10 by obtaining the risk similarity
a similar risk profile to the one investment are located from    values between IRisk1 and BRisk1, IRisk2 and BRisk2 and
the database 6 and their reward values are calculated . These    so forth through IRisk10 and BRisk10 .

US 2018/0096432 A1    Apr. 5 , 2018

[0070 ] Next, the ten Reward /Risk statistics are calculated    then the high correlation to the S & P 500 has nothing to do
as “ ( 1 /Reward Similarity Value?i])/Risk Similarity Value?i]    with being a “ closet indexer” and the customer 's concerns
" , with i going from 1 to 10 . Given the above -noted    can be allayed .
considerations and based on the results, the highest ranked    10075 ]. According to another example of the present
stock would be the best and the lowest ranked stock would    advancement, the usermay determine that a particular stock
be the worst. For example , the highest ranked stock has the    used to be a " value” stock but is now a " growth ” stock
lowest calculated value and the worst stock has the highest    because the stock has raised in value significantly . As such ,
calculated value based on the equation : “ ( 1 /Reward [i ])/Risk    the user may have a problem convincing an investment
[i].”    committee to sell the stock unless the user can show that the
[0071 ] In another example according to the present    stock should not be in the user 's portfolio .
advancement, sometimes the user is not worried about risk    [0076 ] To solve this issue, a BReward Value and a
but is instead interested in the stocks that best match a stock    BReward Growth are calculated by the investment analysis
display screen of the user. In other words, the user may be    system . Using these calculations, the user can demonstrate
interested in stocks that best match a stock display screen    that three years ago when the user bought the stock , its
defining that earnings growth must be >60 % in the last    BReward Value number was much smaller than its BReward
quarter , sales growth must be > 25 % in the last quarter, and    Growth number. However, now the situation is reversed in
average annual earnings per share must be > 25 % over the    that the BReward Value is very much larger than BReward
last 3 years .    Growth . It is important to note in this situation that the
[ 0072 ] A problem with this scenario is that a user will    BReward Value and BReward Growth vectors need not have
typically just adjust the values displayed on the stock display    the same factors thereby making comparisons very simple
screen screens until a certain number of stocks come up    for users well versed in the differences between value and
when no stocks meet the original stock display screen    growth stocks .
criteria . This causes problems because often the user is    [0077] According to another example of the present
looking for a “ common - sense ” or “ close - enough ” match to    advancement, assume a user wants to invest in companies
the screen and adjusts the screens, which can move the user    local to where the user lives because the user believes he
away from obtaining a meaningful screen match . In other    would have a better understanding of information with
words , there isn 't much of a real difference between a stock    respect to those local companies from reading local news
that grew at 25% and one that grew at 24 . 5 % . For this case ,    papers , talking to local company employees, etc . However,
BReward is defined as (60, 25, 25).    determining which companies are local can be troublesome
10073] Next, all the stocks in the database 6 are processed    using conventional methods. A user must struggle with an
and for each one the IReward is calculated as “ min (Earnings    overwhelming amount of search options to determine
Growth ,60 ), min (Sales Growth , 25 ), min (Average Annual    whether a company is local such as a company ' s official
Earnings,25 ) .” Therefore , criterion that are specified as    address , local revenue , the number of employees that live
“ must be greater than ” or “ must be less than " are replaced    near the user, the percentage of the company' s suppliers that
by any numbers that exceed ( are less than ) the threshold by    are local, and the percentage of the company 's customers
the threshold . In other words, if the earnings growth is more    that are local. Therefore , unless the user takes all these
than 60 , it is replaced with 60 . As such , if there are N stocks,    things into account, the user will find it difficult to get useful
N distances N [ i] are calculated between BReward?i ] and    information with respect to his investment needs.
IReward [i]. When the N distances N [i] are ranked in ascend    [0078 ] The use of description vectors of the present
ing order, the lowest N ' s have the bestmatch to your criteria .    advancement overcomes this problem . First, all of the
Therefore , the present advancement provides a more useful    above -noted information with respect to each company is
and reliable stock screen than those provided by conven    collected and stored in the database 6 . For example , the
tional methods.    distance of “ headquarters ” of a company from the geo
[ 0074 ] According to another example of the present    graphic center of where the user lives, the percent of the
advancement, assume that a user is a portfolio manager who    company ' s employees that work within 25 miles of where
owns a variety of stocks and has the S & P 500 as a bench    the user lives, the percentage of the company ' s revenue that
mark . Because of this situation , it may seem that the user is    is generated in the state where the user lives , the amount of
massively correlated to the S & P 500 and is a closet indexer.    the company ' s supplies that come from companies in the
This is a problem because customers may ask why they are    user' s state, and the percentage of the company' s revenue
payingmoney for services when it seems like the user is just    that comes from other states can be included in an BReward
following the S & P 500 . While this may just be a coinci    description vector such as BReward (0 , 100 , 100 , 100 , 100 ).
dence, there needs to be a way to prove the coincidence to    This value is then compared by the investment analysis
the customer. One solution afforded by the present advance    system to the IReward of every company in the database 6
ment is to pick a set of salient investment variables 400 such    using the same variables as those in the BReward descrip
as the P / S ratio , the P / E ratio , average daily trading volume,   tion vector to calculate the distances therebetween . Based on
and market cap relating to a financial request to determine a    the results and the customization and calculation by the
financial correlation . The weighted average P /S , P /E , aver    investment analysis system , the user is provided with infor
age daily trading volume and market cap of the user ' s    mation describing that the lowest distances represent the
portfolio (weighted by their percentage weight in the port    most “ local” companies .
folio ) is then calculated based on their values in the database    [0079 ] According to another example of the present
6 and are compared to the values from the database 6 of the    advancement, the best stocks in the " energy ” sector can be
same input variables 400 with respect to the S & P 500 . In    calculated by customizing a BRisk and BReward and per
other words, the BReward and the IReward are calculated    forming the above -noted procedures for a ranking . If a user
and compared . If they ' re substantially different than zero ,    is interested in stocks that are “ like ” , or “ closest” to South

US 2018/0096432 A1    Apr. 5 , 2018

ern Co , the user determines user- customized investment    the distance of IRiskGE versus BRiskIBM with IRiskF
variables 400 such as Debt/Equity , Price /Sales , Quick Ratio ,    versus BRiskIBM . The one with the highest distance is the
and Market Cap and creates a BReward with these invest    riskiest.
ment variables 400 for Southern Co . These results are then    [0083] According to another example of the present
compared by the investment analysis system to all the    advancement, the user may believe that countries with the
IRewards in the database 6 and the top N matches can be    following set of characteristics (S ) have currencies , or
determined . Similarly , if a user is interested in stocks like    stocks, that will appreciate . The investment analysis system
“ RHAT” , but wants Risk to be taken into account, the user    can then provide the best investments from a list of countries
defines investment variables 400 such as market cap , debt    in the database 6 by generating BReward and IReward and
ratios, share numbers , common owners , financial metrics ,    ranking by ascending order of distance .
and similar past performance for Reward (call these x1, x2 ,    10084 ] Referring back to FIG . 5 , once the investment
x3, . . . xn ) and appropriate investment variables (y1, y2 , y3    advice is returned , it is determined whether there are any
. . . , yn ) for Risk . The user then creates a BRisk description   additional financial requests at step S512 . If YES at step
vector with y1 through yn and a BReward description vector    S512 , then the process returns to step S500 to receive
with xl through xn . The normal above -noted ranking pro    different investment variables and financial requests 400 . If
cedure is then applied to determine the best stocks that are    NO at step S512 , the analysis process is completed and the
like “ RHAT.” Further, if the user is interested in stocks that    process ends .
are like “ RHAT” butonly within the “ technology” sector, the    [0085 ] According to one embodiment of the present
investment analysis system follows the above procedure    advancement, any investment information determined by the
while restricting the stocks in consideration to “ technology ”    analysis investment system is organized and stored virtually
stocks .    in a plurality of folders . For example , analysis results can be
[0080 ] According to another example of the present    stored on a recording medium of a PC or in the database 6
advancement, a user may wish to determine whether his    connected to the network 10 . A user can then use his
mutual fund is exhibiting “ style drift” based on the managers    computer 2 or connect to the network 10 to obtain previously
investment strategy . Style drift is when a manager has bad    calculated investment information based on previously cus
performance and changes his method of managing his fund    tomized description vectors.
to try to catch up . This is usually a disaster for the investor.    10086 ]. Websites hosted by servers 4 can also provide users
 To solve this problem , the user takes a portfolio of the fund    with online access to the features afforded by the analysis
from a past disclosure and picks the salient investment    investment system . These websites provide general access
variables 400 ( these will depend on the type of fund ). The    features to all users as well as increased access and func
investment analysis system then determines the old IReward    tionality when a user registers with the website . A user who
and BReward based on these past investment variables 400    is registered could access old financial investment informa
values stored in the database 6 and calculates the distance .    tion based on previously customized description vectors via
The investment analysis system then takes the portfolio of    a search of the virtual folders. This old investment informa
the fund today and makes the same IReward and BReward    tion could then be compared against current values obtained
but with the current values . At this point the investment    by running the previously customized description vectors. A
analysis system can inform the user whether the distance has    user can also use customized description vectors to deter
changed appreciably . The investment analysis tool can also    mine investment information based on previous market
repeat this process for every past quarter to determine    conditions at a specific date or automatically update the old
whether the distance calculation suddenly spikes up or drifts    investment information based on current market conditions.
up every quarter.    10087 ) Though the above discussion has been made with
[0081] According to another example of the present    reference to the stock market, other financial markets or
advancement, a user that wants to buy government debt can    investment structures may also be used without departing
determine how much riskier that government debt is as    from the spirit of this advancement.
compared to other government debt. For example , assume    [0088 ] The techniques described above are usefulin deter
the user wants to buy Italian government debt but believes    mining the best match of an investment option when com
that German government debt should be taken to be “ risk    pared to an ideal or target value , or for comparing invest
free” . The user then wants to know how much riskier the    ment information without a target ( e . g ., landscape analysis ) .
 Italian government debt is as compared German government    The same principles can be applied to other types of infor
debt . Here, the user determines that the investment variables    mation , including sports performance , such as on the team ,
400 are “ percent of debt maturing in the next year” , the    league , or player level. The described techniques can be used
" debt/GDP ratio ” , the “ current accountdeficit as a percent of   to find all those situations in the past data that are “ similar ”
GDP ” , and “ percentage of debt held by foreigners” . The    to the current situation , and rank that data by their similarity
investment analysis system then constructs the BRisk with    to the target or ideal. Using past data , predications can then
German statistics and the IRisk with Italian Statistics. The    be made for future performance . In some cases, comparison
calculated distance measures show how much riskier Italian    made between the data can be between current versus past
Debt is versus German Debt.    situations, or past versus past or present versus present
[0082 ] According to another example of the present    situations.
advancement, the user may want to buy GE bonds and    10089] A primary difference between this idea , and what is
determine how much riskier the GE bonds are than F bonds?    currently done in the professional sports , is that the state of
If the user believes that IBM bonds are almost “ risk free ”    the art in sports analysis is to find " same" situations. So , how
and should be used as the benchmark , the user picks salient    many yards will an NFL team gain offensively , if it has a top
investment variables 400 and the investment analysis tool    ranked QB , and he' s facing a bottom ranked defense ? How
constructs IRiskGE , IRiskF and BRiskIBM and compares    often does a team win the game when its yards/ pass attempt

US 2018/0096432 A1    Apr. 5 , 2018

are greater than 7 ? And so on . This will obviously not scale    (0094 ] Sports statistics by and large help with linear
to additional variables,because as more variables are added ,    problems. For example, concerning football, the side with
less and less past examples are available for comparison .    more yards /pass attempt wins 75 % of the time; a side with
[ 0090 ] For example, how often does a team win the game    a turnover differential of + 1 wins 68 % of the time, a side
when its yards /pass attempt is greater than 7 , it ' s yards /rush    with a turnover differential of + 2 wins 82 % of the time, a
is less than 3 .5 , its defense is in the bottom half of the league    side with a turnover differential of + 3 or more wins 93 % of
rankings, the temperature is below 45 F , the game is at home,    the time; a side with a net field position advantage of 2 yards
and the other team is using its second string safety ? Under    wins one extra game per season , and so on . But, coaches
this hypothetical example, it 's unlikely that there are any    generally consider tens of variables, such as weather, what
past situations to draw from for direct comparison .    kind of field it is, time difference , how statistically strong
    weak their defense /offense is , the other team ' s points per
[ 0091] But, a similarity metric can be created that com    scoring opportunity, number ofpenalties we have in a game
pares this situation to every past situation and found those    versus them , how many personal fouls , etc . To manage this
that are similar. For example , there may be past situations    large amount of variables, they use their past experience to
where all the criteria are met but the temperature was 51 F .    adjust their base expectations to the current game and
Or, the criteria were met but the game was away , not home.    matchup .
Or it was a first string safety , the temperature was 70 F but    [0095 ] The same thing has to be done by a fantasy player.
otherwise everything was the same. Using the similarity    Which running back should I play today ? The one with the
metric , it is possible to rank all past situations by their    highest yards /carry ? The guy with the most outside runs ?
overall similarity to the situation in question . And by defi    The one who does best on grass fields ? They guy with the
nition then , the shorter the distance , the higher the similarity .   lowest number of fumbles/ carry ? And again , a fantasy player
 This information can then be used to predict future perfor    takes all these variables,his past experience , and tries to pick
mance based on those past similarities . For example, a    that lineup that he thinks maximizes his points for the
weighted sum of all past futures , would make a forward    upcoming matchup
    24up ..
prediction . Or a distribution of possible futures could be    [0096 ] The current technology, described herein , can solve
output along with their probabilities of occurrence . A " fair    all of these problems. It' s applicable to any sport. It auto
value” for a bet could be computed and under and overval    matically handles nonlinearities . It allows as many variables
ues bets could be found. The possible futures would be of    as a person wants to all be simultaneously considered . It
interest to the announcers and commentators because they    automatically draws from past experience . It provides pre
would greatly inform their opinions and commentary . The    cise numerical support for each decision for any number of
possible futures would also be of great interest to coaches    input variable for any sport .
that were game planning and / or calling the game in real
    [0097 ] The idea is the user picks those statistics he or she
time.    thinks are relevant to his question for they can be pre
10092] One of the major issues in statistics is the issue of    picked — different statistics for different questions or,most
nonlinearity . What this means is that quite often , there will    likely , both ]. For example , the following statistics are cho
be a relationship between one or more variables but yet,    sen : yards/pass attempt, temperature of the game, the type of
traditional analysis (which essentially assume linearity )    field , the rank of the defense in points/ game allowed , the
doesn 't pick it up . For a concrete example, think of buying    number of defensive penalties, and the number of offensive
a stock that’ s fallen a lot. As a general rule , it isn 't a good    personal fouls. This is 6 variables. As described herein , a
idea to buy stocks that have fallen , because they will tend to    vector with these 6 variables may be created , for example ,
keep going down . However, it 's quite common to reason ,    by an application . It then goes into all past games and finds
“ the stock ’s fallen , and so ordinarily it wouldn 't be a good    those games thatmost closely match this vector: that is, their
idea to buy it , but look , it' s gone down so much and for so    total distance from 6 variables is the smallest (i.e., they 're
long that it might just be a good buy.” This is an example of    the best matches ). The results of those past matches are
a nonlinearity — the straightforward relationship , “ don 't buy    likely outcomes for the current game. This principle : i) is
as it goes down” has become, " don 'tbuy as it goes down but    analogous to what skilled players and coaches do : they use
if it goes down a lot and for a long time, consider it.” What    their experience ; ii) fast to implement on a computer ; iii)
this example illustrates is that human decisionmaking is rife    automatically handles as many variables as available ; and
with : i) dealing with nonlinearities ; and ii) pattern recogni    iv ) gives a sensible answer even when (as is likely if many
tion . In the above example , a pattern is recognized : “ if it    variables are being considered ) there are no past situations
goes down a lot, maybe you should buy it” .    that are the same.
[0093] A similar principle occurs in sports. For example ,    [0098 ] This procedure can then answer any question that
a coach could think : “ the team with the higher yards per pass    the user poses : who might win , which side might run more ,
attempt wins 75 % of the time, but we aren 't that good at    how will the temperature affect the passing game, which
passing, so perhaps we should run the ball . [So far, linear    defense will score more points, etc . This has the potential to
thinking ). But, the other team 's pass defense is really bad ,    be of immense use both to coaches and fantasy fans.
we are at home, and they ' re a cold weather team coming to    [0099 ] This procedure can also be adapted as an in game
a hot part of the country , so maybe it would be good for us    decision support system for a coach , from football to base
to game plan for a lot of passes.” This is nonlinear thinking    ball and other sports . The system can go back through a
and pattern recognition . Obviously, in the past, this coach    database of all past games (or a subset if you so choose ) and
has had experiences that have informed his decision making    find those games that most closely match the current situ
and he recognizes the similarities between the current situ    ation , and provide results of what happened in the past in
ation and his past experience , which he is using to reason via    similar situations. Similarly , it can be used to inform deci
induction .    sions that are made before a game stats , such as helping a

US 2018/0096432 A1    Apr. 5 , 2018

coach to decide on a best lineup and batting order before the    and/ or a virtual reality or augmented reality visualization of
 game even begins. Is it really best to put your home run    the data , as will be described below in reference to FIGS.
hitters at positions 3 and 4 in the batting order ? Should the    8 - 12 .
conditions that obtain at the start of the game (any number    [0104] Process 600 may begin at operation 602 , where the
of variables that you think are important: from size of field    application , program , etc ., may receive one or more selec
and temperature to the ERA of the opposing pitcher and the    tions of data points or objects for modeling. Operation 602
on base percentage of the opposing team 's leadoff hitter )    may include receiving stock names, investment names or
affect your starting lineup and batting order ? If so , how ? The    other identification information , sports team names, players '
range of questions that can be answered is limited entirely by    names, and so on .
the imagination .    0105 ] At, at operation 604 , the data corresponding to the
    received selections of data points or objects may be
[ 0100 ] In another example , the systems and techniques    obtained , for example , via one or more databases , either
may be used to show support for decisions that are chal    local or remote to the device on which process 600 is being
lenged in the future . Suppose you are the coach of a football    performed . In some aspects , process 500 may include pro
program that has made controversial decisions in the past    viding selection options or other items, for defining exactly
and the athletic director and alumni are unhappy with you .    what information concerning the data point/object should be
The system will make it possible for you to show that your    obtained .
decisions were in accord with past experience : in similar    f0106 ] At operation 606 , the application or program may
situations in the past, the decisions you made were the right    request, and receive definitions of variables to be used for
ones . Or imagine you are the athletic director trying to    evaluating the data points/ objects . In some aspects , opera
decide if to fire a losing coach : did he not have enough    tion 606 may include receiving various information in
talent, or did he make bad decisions during games ? The    various different forms, for example defining a risk variable ,
system will help you figure that out.    a reward variable, or other variable, as described above . In
[0101] Or cricket, the second most popular sport in the    some cases, one or more of the variables may include a
    statistic or other value that is directly obtainable via public
world . Is it really true that you should put your best batsman    information , such as dividend yield , book value for share ,
in at # 3 ? Is that true whether you bat first or second ? Is that   etc ., for stocks or other information . In some examples , the
still true if you are chasing a total or setting at total ? What    one or more variables may include any number of operations
about if it 's a short form match versus a long form ? Is your    ( e . g ., in the form of equations and the like ) to be performed
highest average batsman really your best or does he mostly    on certain pieces of data .
make his runs in low pressure situations, and if so , should    [0107 ] At operation 608 , the values of the variables
you send him higher up the order or lower ? Is it a good tactic    selected /defined at operation 606 may be determined . This
for a right hand bowler to bowl " around the wicket” to a left    may include performing any number of calculations , as
handed batsman who is well set, and on a score of 33 ? Do    defined in operation 606 . At operation 610 , it may be
batsmen bat differently when getting close to a score of 50    determined if any more variables have been selected . If so ,
or 100 because those are big psychologicalmilestones ? If so ,    process 600 may return to operation 606 and continue to
how can you bowl or set your field to take advantage of this    loop through operations 606, 608, and 610 , until no more
difference ? When should the wicket-keeper stand up to a fast    variables are selected . At this point, process 600 may
bowler and what ' s the success rate of this tactic ? Is it really   optionally continue to operation 612 , where a target for each
true that in a limited overs match you should have your    variable may be determined or received and associated with
faster bowlers bowl the final overs ? If so , which types are    a reference or target data point or object. The target point or
most successful: swing, seam , or fast ? Does the size of the    objectmay define an ideal or target combination of variable
ground change whether or not you should think about using    values in which a user wants to compare other data points or
your slower bowlers at the end ? What about temperature and    objects to . This may include , for example , an ideal invest
condition of the pitch ?    ment profile, select statistics of an ideal sports player, team ,
[0102] As illustrated above, the granularity and focus of    etc . In some aspects , the target may include one or more
the data and analysis , is completely configurable , only    benchmarks, as described above in more detail .
limited by the data that is available . The system can auto    [0108 ] At operation 614 , the distance between the selected
matically adjust and adapt to give sensible answers that    data appoints or objects , and in some cases, the distance
accord with human intuition and expertise . It produces a    between the target point or object, may be determined . The
precise , quantifiable result for support for decisions and /or    distance determination may include a geometric or Euclid
to make them in the first place . It can quantify and support    ean distance .
making one decision versus another with a precise measure    [0109 ] At operation 616 , the data points/ objects, and in
ment.    some cases , the target point or object,may be translated into
[0103 ] FIG . 6 illustrates an example process 600 for    3D space . Example 3D spaces are described below in greater
graphically representing data including a number of values    detail, in reference to FIGS. 8 - 12 .
in a multi - dimensional space . As illustrated in FIG . 6 ,    [0110] In some aspects , process 600 may be utilized to
dashed lines indicate optional operations, such that process    display current information , without the addition or com
600 may be performed as described without including one or    parison to a target set of values or target data point/ object
more of those operations. Process 600 may be performed by    (e . g ., omitting operation 612 ). This may be particularly
 software, such as an application , program , etc ., operating    useful for representing a landscape of information , such as
one or more physical devices (e .g., desktop , laptop , smart    investments /stocks, sports statistics, and so on .
phone, tablet , etc .), and /or may interface with other    [0111 ] A specific example of a software code or an algo
resources, such as cloud computing resources, external    rithm for mapping stock variables to a list of distances ,
databases, etc ., as described above . Process 600 may be    which can then be used to a map the data to 3D space , is
performed in conjunction with a graphical user interface    provided below :

US 2018/0096432 A1    Apr. 5 , 2018

multipleFinancialData [ sym _ , listOfProperties _ ] : =
   Join [(sym ), FinancialData [sym , # ] & @ listOfProperties ];
areAnyMissingQ [ list _ ] :=
   If [Length [ Cases [ list, x _ /; MissingQ [x ] ] ] > 0 , True , False ];
normalizeList[ list _ ] := (list - Mean [list]) / Standard Deviation [ list];
stockSymbols = Wolfram Alpha[“ Dow Jones members” ,
    {{“ Result ” , 1 } , " ComputableData ” , Podstates ? {“ Result_More " } ];
members = WolframAlpha [" company " # , “ Wolfram Result” , TimeConstraint ? 60 ] & / @
    stockSymbols ;
mem = Entity Value [# , “ Symbol” ] & / @ Cases [members, Except [_Missing ]];
testdata0 =
  multipleFinacialData[# 1, {" Price ”, “ BookValuePerShare” , “ EarningsPerShare” ,
    “ ShortRatio ” , “ ForwardEarnings” , “ QuarterForwardEarrrings” ,
    “ Dividend Yield ” , “ Volatility 20Day” , “ FractionalChange50 Day" } ] & / @ mem ;
(* Note that the first column in testdata is the symbol* )
testdata = Cases [test .data0 , x _ /; : areAnyMissingQ [x ]]);
header = { {" Symbol” , “ BookToPrice” , “ Earnings To Price” , “ ShortRatio " ,
    “ Forward Earnings To Price” , “ QuarterForward EarningsToPrice” ,
    “ Dividend Yield ” , “ Volatility 20Day ” , “ FractionalChange50 Day" } };
(* Assemble Value Stock Data * )
testdata2 =
   {testdata [[All, 3 ]] / testdata [[All, 2]] testdata [[A11, 4 ]] / testdata [[ A11, 2 ]],
    testdata [[All, 5 ]], testdata [[All , 6 ]] / testdata [ [All , 2 ]],
    testdata [[ All , 7 ]] / testdata [[All , 2 ]], testdata [[All, 8 ]] };
testdata3 = Map [normalize List, testdata2];
benchdata3 = {Max [testdata2[[1 ]]], Max [ testdata2 [[2 ]]], Min?testdata3 ||3111,
    Max [testdata2 [[4 ]]], Max [testdata2 [[5 ]]], Max[testdata2[[6 ]]} ;
   (* Assemble Risky Stocks Data )
   (*Using Min [ ] in benchdata means the
    riskiest stocks have the highest distance values * )
   testdata4 = {testdata [(All, 5 ]], testdata[[All, 9 ]], testdata [[All, 10 ]]};
  benchdata4 =
    {Min [ testdata[[All, 5 ]]], Min[ testdata[ [ All, 9 ]]], Min [testdata [[All, 10 ]]]} ;
  distFromBench [ benchdat_ , testdat_ ] : =
    Module [ {devbench3 , distbench3sq , distbench3, distanceso , distances },
    devbench3 = Map [benchdat – # & , Transpose (testdat] ];
    distbench3sq = Map [ # 2 & devbench3 , { 2 } ];
    distbench3 = Map [ ( Apply [ Plus , # ] ( 1 / 2) & , distbench3sq ];
    distances0 = Transpose [Join [ { testdata [[All , 1 ]] } , { distbench3 } ]] ;
    distances = Sort [distanceso , # 2 [ [2 ] ] > # 1 [ [2 ] ] & ];
    Return [distances] ;
    valueStocks = distFromBench [ benchdata3, testdata3 ];
    riskyStocks = distFromBench [ benchdata4, testdata4 ];
    riskyStocks
    { {NYSE :GS, 0 .12148 }, {NYSE :JPM , 0 .403459} , {NYSE :DD , 0 .455702),
    {NASDAQ :AAPL , 0 .636283}, {NASDAQ: MSFT, 0 .682117 }, {NYSE : VZ , 0 .787088 ) ,
   { NYSE :DIS , 0 .820887 } , {NYSE :NKE , 1.01138 }; {NASDAQ :CSCO , 1.04392 } ,
? {{? NYSE
    ? ::GE
    NYSE
    , 1. 10033 }, {NYSE :PFE , 1.10589 } , {NYSE :JNJ, 1. 14212} , {NYSE :MCD , 1.26595} ,
    XOM , 1. 40164 } , {NYSE:UTX , 1.41244 } , {NYSE :HD , 1.60277 } , {NYSE :KO , 1 .63053 },
    {NYSE :UNH , 2 .08112 } , {NYSE :BA , 2 . 14153 }, {NYSE :CVX , 2 .55133 }, {NYSE : V, 2 .78094 },
    {NASDAQ :INTC , 2.90289 } , {NYSE : TRV, 3 .00248 }, {NYSE :PG , 3. 24057 } ,
    NYSE : AXP, 3. 35114 } , {NYSE:CAT, 3 .63133 }, {NYSE :IBM , 3. 99038 } ,
  ( NYSE :WMT, 4 .59021 } }
valueStocks
{ {NYSE :UTX , 1.43643} , {NYSE : DIS , 1.47293 } , {NYSE :JNJ, 1.57288 } ,
   (NASDAQ :CSCO , 1.59676 } , {NYSE : JPM , 1.86101} , {NYSE :PFE, 1.90903 } ,
   (NASDAQ:MSFT, 2 .05909 }, {NYSE :NKE, 2 .12723 }, {NYSE :GE , 2 ,16135 } ,
   {NYSE :XOM , 2 .22498 } , {NASDAQ :AAPL, 2. 32894 }, {NYSE:UNH , 2 .34948 ) ,
   { NYSE :HD , 2 .69554 , (NYSE :MCD , 2 .821 } , {NASDAQ : INTC , 2.92357 },
   {NYSE:GS, 2 .92436 } ,
   {NYSE :KO , 3.06058 }, {NYSE :AXP, 3.07284 } , {NYSE: PG , 3.09618 } , {NYSE:VZ , 3 . 13575 ),
   { NYSE: BA, 3.14188 }, { NYSE: CVX, 3.28311 }, { NYSE : TRV, 3. 45459 },
   {NYSE :DD , 3.76645 } ,
   {NYSE :WMT, 3. 82656 } , {NYSE :V , 3 .9478 } , {NYSE :CAT, 4 . 17869 }, {NYSE : IBM , 5 .56528 )

[ 0112 ] In some aspects , once a data object is selected , it    exchange on which traded , corporate address . In other
may be stored in one or more tables for specific use with the    examples, an object may represent a bond , such that coupon ,
described system and process for translating information    interest rate , yield to maturity , and so on may be stored for
corresponding to a data object to 3D space . The specific type    each object. In other examples , an object may represent a
of data stored for each data object depends on user selection    currency, such that central bank interest rate, inflation rate,
and preference, as described above . Each data object would    daily trading volume, etc .,may be stored for each object. In
be associated with any number of attributes, such as for    other examples, an object may represent a commodity , such
investments , any of: market cap , historical prices and trading    that then storage costs, yield , backwardation /contango , etc .,
volumes , price/ earnings ratios, revenue, gross margin ,    may be stored for each object. It should be appreciated that

US 2018/0096432 A1    Apr. 5 , 2018

a data object may represent a vast variety of information ,    accessed , for example , via one or more databases as
defined by any number of different characteristics.    described above , and the new variable information associ
[0113] The data structure for storage , in someaspects,may    ated with and stored as the object entry in the database , at
be optimized for more efficient and quicker distance calcu    operation 714 . Process 700 may continue to loop through
lation s between data objects. The data may be stored or    operation 708 through 714 , until no more modifications are
represented as a tree type structures such as kd -trees and    received , at which point process 700 may end.
vp -trees , such as described in “ Data Structures and Algo    [0118 ] In some aspects, the financial, sports, or other
rithms for Nearest Neighbor Search in General Metric    information , and the analysis thereof may be graphically
Spaced ” , by Peter N . Yianilos, NEC Research Institute , 4    displayed or represented as a three or more dimensional
Independence Way , Princeton , New jersey 08540, the con    model, such as model 800 illustrated in FIG . 8 . The model
tents of which are incorporated by reference in their entirety .    800 may be generated via process 600 described above in
In other cases , the data may be stored in other ways . In some    reference to FIG . 6 , and /or may be modified via process 700
aspects, more than one table may be utilized to store    described above in reference to FIG . 7 .
 information for a data object, such as through referential    101191. As illustrated , an ideal or target set of variables
tables and the like. It should be appreciated that the way in    may be determined and defined as a reference point, and
which the data is stored is only a feature of, and not a    mapped to a three dimensional grid or space 800 as point or
defining aspect of the systems and techniques described    sphere 802 . The target set of variables may define a point or
herein . As such , the described system and methods may be    object in the 3D space ( can be a three dimensional object,
implemented using any of a variety of data storage tech    such as a sphere , cube, rectangular prism , pyramid , etc .)
niques not described herein .    Potential stock or other investment options, defined by any
[0114 ] In any data storage implementation , the data is    number of user variables , may similarly be mapped to the
accessible such that it may be retrieved and or modified via    3D space 800 , in relative location to the ideal point or target
interaction ' s with 3D /VR space , as will be described in    802 , as points /objects 804 , 806 , 808 , 810 , etc. As illustrated ,
greater detail below .    each of the x , y , and z axis of the space 800 may define a
 [0115 ] FIG . 7 illustrates an example process 700 for    certain variable , such as one or more of Risk , Reward , a
modifying data through graphical modifications in a multi    variety of financial or investment statistics , sports team or
dimensional space. Process 700 may be performed by soft    player statistics , etc ., as described above. In some cases , one
ware , such as an application , program , etc ., operating one or    or more axis may represent a combined variable . The
more physical devices (e.g ., desktop , laptop , smartphone ,    combination of variables may be configurable , and may
tablet, etc .), and/ or may interface with other resources , such    include addition , averaging, normalization then averaging ,
as cloud computing resources , external databases, etc . Pro    weighted addition , weighted addition after normalization,
cess 700 may be performed in conjunction with a graphical    and so on . In some aspects combining one or more variables
user interface and/ or a virtual reality or augmented reality    or metrics may include using principal component decom
visualization of the data , as will be described below in    position techniques, and /or selecting top variables or metrics
reference to FIGS. 8 - 12 . Process 700 may also , preferably ,    for the 3 axes . In some cases, selection options may be
be implemented in conjunction with process 600 described    automatically generated based on industry standards or
above .    common practices, and the choice of which variables to
[0116 ] Process 700 may begin at operation 702 , where it    indicate on which axes may be left to user determination . It
may be determined if a request for displaying different    should be appreciated that in some cases , the actual variables
information relating to at least one data point/ object is    configured for the visualization are under the control of the
received , for example through a UI, as described below in    user, to provide a better way to visual data and data
reference to FIG . 12 . This may include receiving a touch or    relationships and analytics .
selection of an object, zooming , etc . If a request is received ,   [0120] In one example , various different types of infor
then the new information requested may be retrieved from a    mation may be displayed within 3D space 800 , such as
database or other storage location (or via an automatic    representations of values, coordinates of various points,
internet search , etc . ) at operation 706 , and displayed in the    vector relationships, and so on , by virtue of special relation
3D space at operation 706 . In some cases, the database may    ships in the 3D space . In one example , 3D coordinates ( e.g.,
be local or remote from the device on which process 700 is    x , y, z ) or vector information (e.g ., distance, angle , 1 , angle
being performed . Process may continue to cycle through    2 , defining a vector from the data point to the target point )
operations 702 , 704 , and 706 , until no more requests for    may be displayed next to each data point/object. In some
displaying different information are received    aspects , other visual indicators may be used to represent
[0117 ] At this point, process 700 may continue to opera    additional variables, such that may be user defined . These
tions 708 , in which it may be determined if a graphical    may include representing, for example , a risk or reward
modification of a data point object has been received . This    variable , or other variable via a texture or characteristic of
may include moving a data object in the 3D space and other    a point or sphere , such as fill pattern , line weight, line texture
operations, as described below in reference to FIG . 12 . If a    such as dashing, shape, color, size , and so on . The different
request is received , a new value or values may be deter    variables may be defined , and selected and visually config
mined for one or more metrics / variables based on the    ured by a user, via a user interface as described in more
 graphical modification , at operation 710 . For example , if a    detail below , to customize the space to communicate the
data object is moved a certain distance along the x axis and    most pertinent information to a specific user.
the y axis of the 3D space , then based on the new position,    [0121 ] In this way, the relative difference between differ
the new variable information would be determined (the 3D    ent investment options, and the relative difference between
space accurately represents via distances the different values    investment options and an ideal may be more readily con
for each axis). At operation 712 , the data object may be    veyed via a much more effective and efficient way — via the

US 2018/0096432 A1    Apr. 5 , 2018
    13
representation of distance in the 3D space 800 . Per the other    on the walls/ceilings/ floor or even in the volume of a room
visual indications above, categorical variables ( e.g ., defined    that allow a user to manipulate the data and the perspective
in ranges, binary , etc .) may alternatively or in addition be    of the 3D space . In one example , these controls may include
visually represented via texture , color, shape , dimensions or    virtual “ keyboards,” or other similar controls use a projec
size, flashing or blinking or other movement type indicators,    tion to detect user movements ( e. g., projecting a laser image
and so on , to convey a large amount of information that may    of a keyboard onto a tabletop or directly in the volume of the
be practically immediately comprehended by a user. In this    room ).
way , much more information may be represented and com    [0126 ] It should be appreciated that these gesture controls
municated to a user graphically , while minimizing the    are only given by way of example . Various other gestures for
amount of time and space required to communicate and    zoom and other controls are contemplated herein .
represent such information .
[ 0122 ] In some aspects , various tools, buttons, selections ,    [0127] As illustrated in FIG . 11 , another variable , metric ,
options, controls, etc ., may enable manipulation of the 3d    or dimension, such as change of one ormore variables , may
space 800 , such as by rotation about one or more axis , as    be represented by movement in the 3D space . For example
illustrated in FIG . 9 . It should be appreciated that the 3D    data points /objects 802 , 804 , 806 , 808 , and 810 may move
space modeled in FIGS. 8 and 9 can be adapted for display    over time, through an animation , to new locations 802a ,
in a traditional computer screen environment, or in a virtual    804a , 806a , 808a , and 810a within 3D space 800 . This
or augmented reality environment. As illustrated in FIG . 9 ,    feature , to an even greater extent, offers the ability to
a large number of data objects 812 are illustrated . It should    represent large amounts of data ( e . g ., 3 or more variables at
be appreciated that any number of data points or objects may    multiple points in time) in an extremely efficient way. With
be displayed within 3D space 800.    this feature , trends in the data visualized can be illustrated in
[0123 ] As illustrated in FIG . 10 , a zooming control or    matters of seconds in one screen space, whereas to display
controls 814 may be implemented to modify perspective of    that amount of data in a table or chart, or to read and
the 3D space 800 . In some aspects, zooming into a region or    comprehend that amount of data alone, let alone to derive
focal point in the 3D space 800 may provide more detail of    trend information , would take multiples of that amount of
data points or objects in the field of view ( and zooming out,    time. In yet some aspects, change of movement over time
less detail). In some aspects, zooming may simply display    may also be represented ( e . g., acceleration ) to yet enable the
more or less data points or objects in the field of view . As    more efficient display, and corresponding more efficient
illustrated , FIG . 10 represents the data objects of FIG . 9 , but    communication of data , or trends of trend data .
zoomed in to a higher degree , such that only a few data    [0128 ] In some examples , time, or a fourth dimensions in
points are displayed and the size ofthe data objects is larger.    the 3D space , can be configured via a user interface , to
However, it should be appreciated that the data objects may    change the time period illustrated by animation in the 3D
stay the same size for a zoom adjustment. These and other    space , change the rate at which time is modeled via anima
various configuration parameters may be adjusted by a user    tion (how quickly a certain timeperiod is modeled or length
through a user interface , as described in more detail below .    of the animation ), and so on . In some cases, different
In some cases, these controls may be implemented via    changes in the data , for example , corresponding to one or
standard zooming controls ( such as a bar or other selectable    more data objects , may be represented differently . In addi
item 814 via a pointer or mouse ). In other cases , zooming    tion to or alternative to movement in the 3D space , an object
controls may be linked to gestures in VR spaces, such as    could change shape or color through an animation to indi
moving hands or arms away to zoom ( e . g ., breaststroke type    cate degrees of change in one or more variables . The types
movement), and moving hands or arms together ( reverse    of changes indicated , the way in which they are indicated ,
breastroke) to zoom out.    thresholds for different visual changes , etc., may all be
[0124] In some aspects , zooming controls may addition    configured by the user through user interface controls . For
ally or alternatively include changing the point in the 3D    example , a first data object may represent a stock invest
space from which the 3D space is viewed (changing in    ment. The stock may initially be red and represented by a
essence the user location within the 3D space ). This may be    small sphere , representing a small cap stock losing money .
accomplished via a display screen , or via 3D movement in    Upon starting an animation over a given time period , the
a virtual reality or augmented reality space. In this scenario ,    same data object may transform to being green and a much
selection of the nextperspective location may be selected by    bigger triangular prism , to represent a large cap stock that is
touching the screen or double tapping on a location in the    making money but has changed sector . UI controls may
virtual reality space . In some implementations, virtual real    enable almost endless configuration of changes of different
ity of the 3D space may include visualization within the    variables represented in a variety of visual ways, such as
space the size of a room , for example , to provide a immer    changes in color, shape, texture , size, and so on .
sive experience. This type of visualization would enable a    [0129 ] FIG . 12 illustrates an example graphical user inter
user to walk around the various data objects, manipulate    face (GUI) 1200 that may be used to manipulate and
objects , access more information of objects by touching    configure the 3D space 800 illustrated and described in
them , changing scale, size , color, density , weight, bright    reference to FIGS . 8 - 11 above. These controls may include
ness , contrast, spacing, size, shape, etc . In some aspects , a    panning 1202 , rotating , 1204 , zooming 1206 , and / or re
target object may be moved in the space , and its values    sizing 1208 of the perspective view of 3D space 800 . These
re - calculated , and displayed , for example , to enable real    controls may also include an item 1210 to start a simulation
time or near -real time evaluation of assumption changes,    of variables taken over a configured time period . In some
such as for investment evaluation purposes .    aspects , the point of view may be set via control 1212, for
 0125 ] In some examples , 3D or virtual reality controls    example , via selecting a point in or around the 3D space . In
may include projecting “ touch pads” or other control objects    this way , for example, the relative change of certain vari

US 2018/0096432 A1    Apr. 5 , 2018

ables over time may be highlighted or discounted (e. g.,    determining at least three variables for evaluating the
changing the perspective to align with one axis ).    multiple data objects ;
[ 0130 ] In some aspects, the controls may enable configu    determining a target value for each of the at least three
ration of different variables, via item 1214 , shown in the 3D    variables ;
space and precisely how they are shown . This may include    determining a distance between each of the multiple data
configuring certain colors, shapes, sizes, etc ., to represent    objects ; and
different values or different variables. The GUI 1200 may    translating and displaying the multiple data objects into
also include selection options for configuring animation    three dimensional space as the three -dimensional
1216 , including time period , length of animation and so on .    model at least in part based on the determined distance ,
[0131] The GUI 1200 may also include controls or selec    wherein the distance between each of the multiple data
tion options 1218 for configuring what data is displayed and    objects accurately represent difference in values of the
exactly how it is displayed (via visual indicators , via    at least three variables .
expanding a data object , etc.).    2 . The non -transitory computer readable storage medium
[0132 ] GUI 1200 is configured to be used primarily with    of claim 1 , wherein the instructions further cause the at least
a display device, such as a screen ( e. g., as part of a desktop ,    one professor to perform the additional operations of:
laptop , smart phone, tablet, etc .). However, it may be    generating a graphical user interface , wherein the graphi
adapted for use in virtual or augmented reality by using    cal user interface comprises selection items for at least
similar controls accessed via certain gestures . In some cases,    one of configuring or manipulating the three dimen
one or more additional sensors may be used to project one    sional model.
or more selection options onto a surface . In some cases other    3 . The non -transitory computer readable storage medium
devices and /or sensors may be used to detect relative    of claim 1 , wherein the instructions further cause the at least
motion , such as the Vive motion controllers from HTC , the    one professor to perform the additional operations of:
Oculus Touch as part of the Oculus Riff VR system , or    determining a target value for each of the at least three
Mixed Reality Controllers by Microsoft . In some examples,
3D or virtual reality controls may include projecting " touch    variables ;
pads ” or other control objects on the walls/ ceilings/floor or    determining a distance between each of the multiple data
even in the volumeof a room that allow a user to manipulate    objects and the at least three target values for each of
the data and the perspective of the 3D space . It should be    the multiple data objects ;
appreciated that any of a variety of display and virtual or    translating and displaying the at least three target values
augmented reality systems, devices, hardware , interface    into three dimensional space as part of the three
software , etc ., may be used with the described systems and    dimensional model, wherein the distance between each
techniques to enhance the user experience and to better    of the multiple data objects and the at least three target
represent data analytics and relationship between data , as    values accurately represent difference in values of the
described herein .    at least three variables .
[0133] Any processes , descriptions or blocks in flowcharts    4 . The non -transitory computer readable storage medium
described herein should be understood as representing mod    of claim 1 , wherein obtaining the data corresponding to
ules, segments, or portions of code which include one or    multiple data objects formodeling comprises obtaining data
more executable instructions for implementing specific logi    corresponding to multiple points in time of an object to be
cal functions or steps in the process, and alternate imple    modeled ; and wherein the instructions further cause the at
mentations are included within the scope of the exemplary    least one professor to perform the additional operations of:
embodiment of the present advancements in which functions    animating movement of at least one of the multiple data
may be executed out of order from that shown or discussed ,    objects based on the obtained data corresponding to
including substantially concurrently or in reverse order    multiple points in time, wherein the movement repre
depending upon the functionality involved .    sents a change in at least one value over a time period
[ 0134 ] Obviously , numerous modifications and variations    captured by the multiple points in time.
of the present advancements are possible in light of the    5 . The non -transitory computer readable storage medium
above teachings . In particular, while the application of the    of claim 1, wherein displaying the multiple data objects and
present advancement has been described with respect to    the at least three target values into three dimensional space
events such as conventions, sports and concerts , other appli    comprises displaying in a virtual reality or augmented reality
cations are within the scope of the appended claims. For    space .
example , without limitation, the present advancement may    6 . The non -transitory computer readable storage medium
be applied to video games , TV , cell phones , tablets, web    of claim 1 , wherein the instructions further cause the at least
applications , and any other platform as would be understood    one processor to perform the additional operations of:
by one of ordinary skill in the art. It is therefore to be    generating a graphical user interface, wherein the graphi
understood that within the scope ofthe appended claims, the    cal user interface comprises selection items for config
present advancements may be practiced otherwise than as    uring additional information of the multiple data
specifically described herein .    objects and how the additional information is dis
   1 . A non - transitory computer readable storage medium    played .
having stored thereon instructions that, upon execution by at    7 . The non -transitory computer readable storage medium
least one processor , cause the at least one processor to    of claim 6 , wherein the selection items further comprise
perform operations for generating a three - dimensional (3D )    items for configuring different graphical representations of
model, the operations comprising:    the addition information .
  obtaining data corresponding to multiple data objects for    8 . The non -transitory computer readable storage medium
    modeling;    of claim 7 , wherein the different graphical representations of

US 2018/0096432 A1    Apr. 5 , 2018

the addition information comprise at least one of color,    tribution of the sports performance , the one or more
shape, texture , size, fill pattern , movement, or brightness .    variables having values identified by the benchmark ,
   9 . The non -transitory computer readable storage medium    or
of claim 1 , wherein at least one of the at least three variables    a benchmark risk vector containing the one or more
for evaluating the multiple data objects comprises a combi    sports performance variables which the user believes
nation of two or more variables.    relate to the level of risk of the expected possible
   10 . The non - transitory computer readable storage medium    future outcome distribution of the sports perfor
of claim 1, wherein each of the multiple data objects    mance , the one or more variables having values
represents investments .    identified by the benchmark .
   11 . The non -transitory computer readable storagemedium    14 . An information processing apparatus for analyzing
of claim 1, wherein each of the multiple data objects    possible future sports outcomes , comprising:
represents at least one of a sports team or a sports player.    a processor programmed to receive a possible future
   12 . The non -transitory computer readable storage medium    sports outcome request identifying sports outcome
of claim 1 , wherein determining the distance between each    information a user wishes to obtain relating to a pos
of the multiple data objects is based on a user selectable    sible future sports outcome, and one or more different
metric .    types of sports performance variables relating to at least
   13 . An information processing apparatus for analyzing a    one of the possible future sports outcomes and a
distribution of possible future sports outcomes , comprising:    benchmark ,
   a processor programmed to receive a possible future    generate at least two vectors containing the one or more
    sports outcome distribution request identifying sports    sports performance variables based on the possible
    outcome distribution information a user wishes to    future sports outcome request ,
    obtain relating to a possible future sports outcome    calculate a similarity value by calculating a distance
    distribution , and one or more different types of sports    between the at least two vectors,
    performance variables relating to at least one of the    and analyze the similarity value and the possible future
    possible future sports outcomes and a benchmark ,    sports outcome request, and
   generate at least two vectors containing the one or more    determine output information , as possible future sports
    sports performance variables based on the possible    outcome advice for a user, correlating to the possible
    future sports outcome distribution request ,    future sports outcome request and the similarity value
   calculate a similarity value by calculating a distance    based on results of the analysis,
    between the at least two vectors,    wherein each vector is one of the following types :
   and analyze the similarity value and the possible future    a sports performance reward vector containing one or
    sports outcome request, and    more sports performance variables which the user
  determine output information , as a distribution of possible    believes relate to an expected possible future out
    future sports outcome advice for a user, correlating to    come of the sports performance variables ,
    the possible future sports outcome distribution request    a sports performance risk vector containing one or
    and the similarity values based on results of the analy    more sports performance variables which the user
    sis ,    believes relate to a level of risk of the sports perfor
  wherein each vector is one of the following types:    mance ,
    a sports performance reward vector containing one or    a benchmark reward vector containing the one or more
    more sports performance variables which the user    sports performance variables which the user believes
    believes relate to an expected possible future out    relate to the expected possible future outcome of the
    come distribution of the sports performance vari    sports performance , the one ormore variables having
    ables ,    values identified by the benchmark , or
    a sports performance risk vector containing one or    a benchmark risk vector containing the one or more
    more sports performance variables which the user    sports performance variables which the user believes
    believes relate to a level of risk of the sports perfor    relate to the level of risk of the expected possible
    mance outcome distribution ,    future outcomeof the sports performance , the one or
    a benchmark reward vector containing the one ormore    more variables having values identified by the
    sports performance variables which the user believes    benchmark .
    relate to the expected possible future outcome dis    *   *   *   *   *
