Coder Social home page Coder Social logo

compcogneuro / sims Goto Github PK

View Code? Open in Web Editor NEW
128.0 10.0 52.0 107 MB

simulations for the Computational Cognitive Neuroscience textbook

Home Page: https://CompCogNeuro.org

License: BSD 3-Clause "New" or "Revised" License

Go 58.34% Makefile 1.13% Python 40.53%
emergent simulations neural-network cognitive-neuroscience golang python

sims's People

Contributors

frankmj avatar rcoreilly avatar rohrlich avatar thazy avatar yukomunakata avatar zycyc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sims's Issues

Family Trees: Readme doesn't give clear Training instructions

The instructions for the Chapter 4 Readme sim do not clearly describe how to Train the network and how long. It tells people how to go by single trials and then starts talking about watching the network train without actually saying how to start full training and for how long.

Act_M doesn't display until many cycles after Act displays

Maybe I'm misunderstanding something fundamental, but when I display the Act variable on the network, and run the cats and dogs, the Act variable starts to increase before cycle 20 or so, but the ActM variable does not start to display until almost cycle 70.

reproducing offcial code

Hi, I am trying to reproduce the simulations with my own simple python code

for the sims/ch2/neuron/ example, I have:

This looks quite different from the official example, I wonder where am I doing it wrong?

image

it is produced by the following code:

from typing import Dict, List
import numpy as np
import matplotlib.pyplot as plt
from scipy.interpolate import interp1d

class Recorder:
    def __init__(s):
        s.records: Dict[str, List] = {}

    def record(s, k, v):
        if k not in s.records: s.records[k] = []
        s.records[k].append(v)
    
    def show(s):
        scale = 1.8
        plt.figure(figsize=(2*scale, len(s.records)*scale))
        for i, (k, v) in enumerate(s.records.items()):
            plt.subplot(len(s.records), 1, i+1)
            plt.plot(v)
            plt.title(k)   
        plt.tight_layout() 
        plt.show()

recorder = Recorder()

#============================================

def init_act_func(gamma, sigma):
    x = np.linspace(-2, 2, 1000)
    x2 = gamma * np.where(x < 0, 0, x)
    y = x2 / (x2+1)
    gaussian = np.exp(-x**2/(2*sigma**2))
    gaussian /= np.sum(gaussian)
    y2 = np.convolve(y, gaussian, mode='same')
    mask = np.gradient(y2) >= 0
    x = x[mask]; y = y[mask]; y2 = y2[mask]
    act_func = interp1d(x, y2)
    if 0:
        plt.plot(x, y)
        plt.plot(x, act_func(x))
        plt.show()
    return act_func

#======================================

gbe = 0.3; gbi = 1.0; gl = 0.3
Ee = 1.0; Ei = 0.25; El = 0.3
Vmr = 0.3
dt_vm = 0.3
Theta = 0.5 
act_func = init_act_func(gamma=30, sigma=0.01)
mode = 'spike'

class Neuron:
    def __init__(s):
        s.Vm = Vmr
        s.y = 0

    def update(s, ge, gi=0):
        ge *= gbe; gi *= gbi
        Inet = ge*(Ee-s.Vm) + gi*(Ei-s.Vm) + gl*(El-s.Vm)
        s.Vm += dt_vm * Inet
        
        if mode=='spike':
            if s.Vm > Theta: s.y = 1; s.Vm = Vmr
            else: s.y = 0
        elif mode=='rate':
            # Vm_eq = (ge*Ee + gi*Ei + gl*El) / (ge + gi + gl)
            ge_thr = (gi*(Ei-Theta) + gl*(El-Theta)) / (Theta-Ee)
            ys = act_func(ge - ge_thr)
            s.y += dt_vm * (ys - s.y) 

        recorder.record('ge', ge)
        recorder.record('Inet', Inet)
        recorder.record('Vm', s.Vm)
        recorder.record('act', s.y)

if __name__=='__main__':
    neuron = Neuron()
    for t in range(10):
        neuron.update(0)
    for t in range(10, 160):
        neuron.update(1)
    for t in range(160, 200):
        neuron.update(0)
    recorder.show()

Ch7/pvlv reliably freezes for many users

three or four of my students reported that PVLV completely freezes when they are trying to do any of the questions past 7.7. Some of them were not able to even do 7.7. This occurs for both Mac and Windows users. I had the same problem running Mac Catalina. Note this is not a crash, but instead is a hard freeze. Nothing on the interface is responsive. No messages in Terminal.
But not all students report this, many were able to finish.

ch6/attn has multiple issues

  • The trial graph is not showing multiple runs -- just shows the last? and some students are having issues with items showing in the wrong order etc. I also saw that when pulling up the TstTrlLog.

  • The model performance in the lesioned condition is quite a bit slower than the patient data now, so the question about comparison with patient data is a bit weird -- take another look at params.

dyslex crashed

  • Open Trained Wts
  • Train
  • TrnEpcPlot
  • Stop
  • Init <- crashed

oshadow:ch9 Maryam$ ./dyslex
2020/06/03 12:01:33 No data points
2020/06/03 12:01:33 No data points
2020/06/03 12:01:33 No data points
2020/06/03 12:01:33 No data points
2020/06/03 12:01:33 No data points
2020/06/03 12:01:33 No data points
2020/06/03 12:01:33 No data points
2020/06/03 12:01:33 No data points
2020/06/03 12:01:33 No data points
2020/06/03 12:01:33 No data points
panic: runtime error: index out of range [1] with length 1

goroutine 7 [running]:
github.com/emer/etable/eplot.(*Plot2D).GenPlotBar(0xc0004d1100)
/Users/oreilly/go/pkg/mod/github.com/emer/[email protected]/eplot/barplot.go:129 +0x10e9
github.com/emer/etable/eplot.(*Plot2D).GenPlot(0xc0004d1100)
/Users/oreilly/go/pkg/mod/github.com/emer/[email protected]/eplot/eplot2d.go:274 +0xe0
github.com/emer/etable/eplot.(*Plot2D).Style2D(0xc0004d1100)
/Users/oreilly/go/pkg/mod/github.com/emer/[email protected]/eplot/eplot2d.go:595 +0x84
github.com/goki/gi/gi.(*Node2DBase).Style2DTree.func1(0x54b9860, 0xc0004d1100, 0x6, 0x517aaa0, 0xc000818000, 0x1)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/node2d.go:756 +0x51
github.com/goki/ki/ki.(*Node).FuncDownMeFirst(0xc000818000, 0x6, 0x517aaa0, 0xc000818000, 0x528cbe8)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/ki/node.go:1650 +0x778
github.com/goki/gi/gi.(*Node2DBase).Style2DTree(0xc000818000)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/node2d.go:750 +0x109
github.com/goki/gi/gi.(*Node2DBase).FullRender2DTree(0xc000818000)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/node2d.go:691 +0x56
github.com/goki/gi/gi.(*Viewport2D).FullRender2DTree(0xc000818000)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/viewport.go:548 +0x91
github.com/goki/gi/gi.(*Viewport2D).UpdateNodes(0xc000818000)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/viewport.go:813 +0x4d5
github.com/goki/gi/gi.(*Viewport2D).SetNeedsFullRender(0xc000818000)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/viewport.go:773 +0x51
main.(*Sim).ConfigGui.func2(0x54c4ae0, 0xc000803000, 0x54bc2e0, 0xc0011ec600, 0x0, 0x0, 0x0)
/Users/oreilly/go/src/github.com/CompCogNeuro/sims/ch9/dyslex/dyslex.go:1398 +0x41
github.com/goki/ki/ki.(*Signal).Emit(0xc0011edea8, 0x54bc2e0, 0xc0011ec600, 0x0, 0x0, 0x0)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/ki/signal.go:162 +0x1a5
github.com/goki/gi/gi.(*Action).ButtonRelease(0xc0011ec600)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/action.go:222 +0x112
github.com/goki/gi/gi.(*ButtonBase).MouseEvent.func1(0x54bc2e0, 0xc0011ec600, 0x54c4ae0, 0xc000803000, 0x0, 0x50b8580, 0xc017ec4f80)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/buttons.go:438 +0xcd
github.com/goki/gi/gi.(*WinEventRecv).Call(0xc01fb4bcf8, 0x54c4ae0, 0xc000803000, 0x0, 0x50b8580, 0xc017ec4f80)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/events.go:116 +0x8c
github.com/goki/gi/gi.(*EventMgr).SendEventSignal(0xc000803190, 0x5470660, 0xc017ec4f80, 0x1)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/events.go:237 +0x54f
github.com/goki/gi/gi.(*Window).ProcessEvent(0xc000803000, 0x5470660, 0xc017ec4f80)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/window.go:1521 +0x7ac
github.com/goki/gi/gi.(*Window).EventLoop(0xc000803000)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/window.go:1448 +0x36
github.com/goki/gi/gi.(*Window).StartEventLoop(0xc000803000)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/window.go:854 +0x6d
main.mainrun()
/Users/oreilly/go/src/github.com/CompCogNeuro/sims/ch9/dyslex/dyslex.go:1641 +0x6b
main.main.func1()
/Users/oreilly/go/src/github.com/CompCogNeuro/sims/ch9/dyslex/dyslex.go:47 +0x20
github.com/goki/gi/gimain.Main.func1(0x5484560, 0x68dc280)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gimain/gimain.go:31 +0x24
github.com/goki/gi/oswin/driver/glos.Main.func1()
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/oswin/driver/glos/app.go:87 +0x40
created by github.com/goki/gi/oswin/driver/glos.Main
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/oswin/driver/glos/app.go:86 +0x87

Starting projects when connected to projector in classroom results in highly distorted display.

I was using the projector in class on Monday and Wednesday to show some of the class projects and when I started the projected it gave me a highly distorted display. The Netview window was a reasonable size, but all the widgets and texts within it were highly compressed.
By disconnecting the projector, then starting the project on my laptop and then reconnecting, it would usually display properly, but not always. I believe that the external projector is an Extron.
I did get the following in the terminal window.

Last login: Wed Jan 15 11:11:33 on ttys001
/Applications/Emergent\ Go\ ver\ 1.01/mac\ binaries/ch2/detector ; exit;
(base) Stephen-Reads-MacBook-Pro:~ read$ /Applications/Emergent\ Go\ ver\ 1.01/mac\ binaries/ch2/detector ; exit;
OpenGL version 4.1 INTEL-12.10.14
2020/01/15 11:12:05 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:12:05 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:12:05 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:12:05 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:12:05 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:12:05 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:12:05 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:12:07 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:12:07 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:12:07 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:12:07 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:12:07 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:12:07 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:12:07 PlatformError: Cocoa: Failed to find a screen for monitor
testing index: 7
2020/01/15 11:42:55 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:42:55 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:42:55 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:42:55 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:42:55 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:42:55 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:42:55 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:42:55 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:42:55 PlatformError: Cocoa: Failed to find a screen for monitor
2020/01/15 11:42:55 PlatformError: Cocoa: Failed to find a screen for monitor

Viewing words does not work on Ubuntu 18.04

When following the steps, there have been two times that the simulation crashed. When hitting the [Wt Words] button, the simulation crashes. When hitting the TrainEnv and then on Words to see a list of all the words, the simulation crashes.

About sim/ch8/hip

I have some questions about hippocampus model in the sim/ch8/hip.

  1. The projections Ecin_to_Ca3, Ca3_to_Ca3, use the Dwt function in the Ecca1.go, and projections Ecin_to_DG uses the Dwt function in the chlprjn.go. Both Dwt function combine the Error driven and self-organizing learning rule. This is quite different with the paper you wrote at 2013 (Theta coordinated error-driven learning in the hippocampus)(deltaCHL = 0). I would like to know the reason you change your model structure.

  2. After I traced your code in /emer/leabra/hip, I knew the different between Ecca1.go (err-driven + bcm) and chl.go(err + CPCA). Could you provide some examples about which situation the model should uses chl.go or ecca1.go?

jui shiang

Solution to: "dzn is not a conformant Vulkan implementation, testing use only"

Upon launching any of the simulations, I usually have to open it up multiple times to get the sim to launch. On the working launch, the CLI is present showing the text, "dzn is not a conformant Vulkan implementation, testing use only."

This is because there is a weird compatibility layer that I have noticed primarily with Asus laptops.

This compatibility layer that comes preinstalled with many of these systems is called: OpenCL™, OpenGL® and Vulkan® Compatibility Pack

This can be uninstalled by going to --> ** Settings > Apps > OpenCL™, OpenGL® and Vulkan® Compatibility Pack > Uninstall **

Cheers

On Windows windows don't open

This is related to an issue that I reported earlier, but I can't find where I posted it before. Anyway, I reported earlier that when opening some of the projects from Chapter 2, either detector or neuron that on Windows 10 the main project window didn't open, but that with some playing around with Windows split screen function they were able to get it to open. Randy asked people to look at the screen info in GoGi preferences. However, one of my students says that while she can get the project window to open properly, when she tries to open either the TestCycLog for the neuron project that the window does not show up and she also cannot get the GoGi preferences window to show up.

ch7/pvlv/pvlv.go crashes when multi-condition sequence PosExt transitions fm 0(PosAcq50) to 1(PosExtinct) WHILE TrialTypeData tab displayed

NEEDS to be incorporated into next published version of the sims. .../emer/leabra/examples/pvlv/pvlv.go has a workaround fix.

Steve Read reported this crash and Randy Gobbel diagnosed the problem:

It appears that the cause of this crash was a bug in etable.Plot2D.GenPlotXY that was using the set of indices from the 3-condition case, in the acquisition phase, when the actual number of rows had decreased, in the extinction phase. I added a call to DeleteInvalidIndices right after the line that sets the number of rows in the TrialTypeData table, and it's now working for me. The new code has been committed to github, not yet incorporated into a release.

-Randy

On Tue, Mar 16, 2021 at 4:36 PM Stephen Read <[email protected]> wrote:
To add to this I was running Cataline on a Mac.

I had a student report that PVLV was crashing on her and I was just able to repeat this.  I was going through the Extinction part of the exercise and when I got to the part after training, when I set StepN back to 1, it crashed on me.

Anyone have idea what is going on. This is what was in the terminal window:

The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.
For more details, please visit https://support.apple.com/kb/HT208050.
(base) Stephen-Reads-MacBook-Pro:~ read$ /Applications/emergent_sims\ v1.2.3/mac_binaries/mac-3_sims/ch7/pvlv ; exit;
ComboBox RunParams selected index: 24 data: PosExt
Initializing...
initializing weights
Initializing...
panic: runtime error: index out of range [10] with length 10

goroutine 127 [running]:
github.com/emer/etable/eplot.(*Plot2D).GenPlotXY(0xc0006ab800)
/Users/oreilly/go/pkg/mod/github.com/emer/[email protected]/eplot/xyplot.go:205 +0x2070
github.com/emer/etable/eplot.(*Plot2D).GenPlot(0xc0006ab800)
/Users/oreilly/go/pkg/mod/github.com/emer/[email protected]/eplot/eplot2d.go:281 +0x13a
github.com/emer/etable/eplot.(*Plot2D).Layout2D(0xc0006ab800, 0x46a, 0x117, 0xe0d, 0x7a1, 0x0, 0x4218000041640000)
/Users/oreilly/go/pkg/mod/github.com/emer/[email protected]/eplot/eplot2d.go:685 +0xd4
github.com/goki/gi/gi.(*Node2DBase).Layout2DChildren(0xc0002c5080, 0x0, 0xbb)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/node2d.go:885 +0x167
github.com/goki/gi/gi.(*Layout).Layout2D(0xc0002c5080, 0x45b, 0xbb, 0xe1c, 0x7b0, 0x0, 0x4218000040980000)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/layout.go:2104 +0xfd
github.com/goki/gi/gi.(*Node2DBase).Layout2DChildren(0xc0007eec00, 0x0, 0xb7)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/node2d.go:885 +0x167
github.com/goki/gi/gi.(*Layout).Layout2D(0xc0007eec00, 0xe, 0xb7, 0xe20, 0x7b4, 0x0, 0x0)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/layout.go:2104 +0xfd
github.com/goki/gi/gi.(*Node2DBase).Layout2DChildren(0xc0007b2000, 0x0, 0x50ff460)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/node2d.go:885 +0x167
github.com/goki/gi/gi.(*SplitView).Layout2D(0xc0007b2000, 0xe, 0x56, 0xe20, 0x7b4, 0x0, 0x4218000041640000)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/splitview.go:401 +0x594
github.com/goki/gi/gi.(*Node2DBase).Layout2DChildren(0xc0004b9180, 0x0, 0x0)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/node2d.go:885 +0x167
github.com/goki/gi/gi.(*Layout).Layout2D(0xc0004b9180, 0x0, 0x0, 0xe2e, 0x7c2, 0x0, 0x4218000000000000)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/layout.go:2104 +0xfd
github.com/goki/gi/gi.(*Node2DBase).Layout2DChildren(0xc0004b8100, 0x0, 0x0)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/node2d.go:885 +0x167
github.com/goki/gi/gi.(*Layout).Layout2D(0xc0004b8100, 0x0, 0x0, 0xe2e, 0x7c2, 0x0, 0xa)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/layout.go:2104 +0xfd
github.com/goki/gi/gi.(*Node2DBase).Layout2DChildren(0xc0007db500, 0x0, 0x0)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/node2d.go:885 +0x167
github.com/goki/gi/gi.(*Viewport2D).Layout2D(0xc0007db500, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1e)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/viewport.go:471 +0x85
github.com/goki/gi/gi.(*Node2DBase).Layout2DTree(0xc0007db500)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/node2d.go:841 +0x21a
github.com/goki/gi/gi.(*Node2DBase).FullRender2DTree(0xc0007db500)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/node2d.go:729 +0x7b
github.com/goki/gi/gi.(*Viewport2D).FullRender2DTree(0xc0007db500)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/viewport.go:566 +0x93
github.com/goki/gi/gi.(*Viewport2D).UpdateNodes(0xc0007db500)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/viewport.go:840 +0x4e5
github.com/goki/gi/gi.(*Viewport2D).SetNeedsFullRender(0xc0007db500)
/Users/oreilly/go/pkg/mod/github.com/goki/[email protected]/gi/viewport.go:800 +0x51
main.(*Sim).ExecuteRun.func1(0x1, 0xc01753e320)
/Users/oreilly/go/src/github.com/CompCogNeuro/sims/ch7/pvlv/pvlv.go:1178 +0xe5
main.(*Sim).ExecuteRun(0x67f0860, 0x1)
/Users/oreilly/go/src/github.com/CompCogNeuro/sims/ch7/pvlv/pvlv.go:1186 +0x117
created by main.(*Sim).RunSteps
/Users/oreilly/go/src/github.com/CompCogNeuro/sims/ch7/pvlv/pvlv.go:916 +0x191
logout
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.

[Process completed]

Stephen J. Read, Mendel B. Silberberg Professor of Social Psychology
3620 McClintock Ave, 501 SGM
University of Southern California
Los Angeles, CA 90089-1061
[email protected]

Unit names don't align with units

This may not have been implemented yet, but I notice that the unit names on the network do not align with the units.
Also, I don't see where the names for the units are defined anywhere, so I was curious how that was done.

On Mac executables can be started by double clicking

Contrary to the instructions on the Read Me, Mac executables can be started by double clicking, they do not require a control click. Double-clicking on the executable opens a Mac Terminal window and the program starts.

rename m1 -> apple

Hard to know what short name to use for the M* chips but "Apple Silicon" is usual long name.

apple vs. intel is probably best short distinction.

r.Wt does not show weights

Some students in the class can not see the colored blocks for r.Wt - they only got faint greens for the unit they clicked on but no other unit lit up. This has appeared in some simulations in both chapter 3 and 4. Just posting this issue to flag the situation. Will investigate if there is any commonality among the systems those students use

Crashing/Hanging when pressing "Edit" on toolbar

On Arch Linux 5.6.3 - gnome desktop. When you click the "Edit" in the toolbar the program will completely freeze up with no errors in terminal. This can be reproduced on my end every time by clicking the "Edit" button around 10 times. Sometimes it crashes with this.

Effective LogicalDPI now: 132  PhysicalDPI: 140.94798  Eff LogicalDPIScale: 0.9365157  ZoomFactor: 0.95652175
Effective LogicalDPI now: 126  PhysicalDPI: 140.94798  Eff LogicalDPIScale: 0.8939468  ZoomFactor: 0.9130435
Effective LogicalDPI now: 120  PhysicalDPI: 140.94798  Eff LogicalDPIScale: 0.8513779  ZoomFactor: 0.8695652
Effective LogicalDPI now: 114  PhysicalDPI: 140.94798  Eff LogicalDPIScale: 0.80880904  ZoomFactor: 0.82608694
GLFW: An invalid error was not accepted by the caller: FormatUnavailable: X11: Failed to convert selection to string
GLFW: Please report this bug in the Go package immediately.
panic: FormatUnavailable: X11: Failed to convert selection to string

goroutine 6 [running]:
github.com/go-gl/glfw/v3.3/glfw.acceptError(0x0, 0x0, 0x0, 0xb462d5, 0xc0008c6580)
	/home/oreilly/go/src/github.com/go-gl/glfw/v3.3/glfw/error.go:178 +0x201
github.com/go-gl/glfw/v3.3/glfw.panicError(...)
	/home/oreilly/go/src/github.com/go-gl/glfw/v3.3/glfw/error.go:185
github.com/go-gl/glfw/v3.3/glfw.PostEmptyEvent()
	/home/oreilly/go/src/github.com/go-gl/glfw/v3.3/glfw/window.go:1006 +0x38
github.com/goki/gi/oswin/driver/glos.(*appImpl).RunOnMain(0x28001a0, 0xc005871f80)
	/home/oreilly/go/src/github.com/goki/gi/oswin/driver/glos/app.go:103 +0x36
github.com/goki/gi/oswin/driver/glos.(*windowImpl).SetWinTexSubImage(0xc000093080, 0x9b, 0x2, 0x18616c0, 0xc0004b2c00, 0x9b, 0x2, 0xc6, 0x22, 0xc000fbf4f0, ...)
	/home/oreilly/go/src/github.com/goki/gi/oswin/driver/glos/window.go:272 +0x105
github.com/goki/gi/gi.(*Window).UploadVpRegion(0xc000be1000, 0xc0004e2000, 0x9b, 0x2, 0xc6, 0x22, 0x9b, 0x2, 0xc6, 0x22)
	/home/oreilly/go/src/github.com/goki/gi/gi/window.go:956 +0x43c
github.com/goki/gi/gi.(*Viewport2D).VpUploadRegion(0xc0004e2000, 0x9b, 0x2, 0xc6, 0x22, 0x9b, 0x2, 0xc6, 0x22)
	/home/oreilly/go/src/github.com/goki/gi/gi/viewport.go:328 +0xeb
github.com/goki/gi/gi.(*Viewport2D).ReRender2DNode(0xc0004e2000, 0x18ef680, 0xc000d5ac80)
	/home/oreilly/go/src/github.com/goki/gi/gi/viewport.go:376 +0x16b
github.com/goki/gi/gi.(*Viewport2D).UpdateNode(0xc0004e2000, 0x18ef680, 0xc000d5ac80)
	/home/oreilly/go/src/github.com/goki/gi/gi/viewport.go:854 +0x1cf
github.com/goki/gi/gi.(*Viewport2D).UpdateNodes(0xc0004e2000)
	/home/oreilly/go/src/github.com/goki/gi/gi/viewport.go:835 +0x1d7
github.com/goki/gi/gi.(*Viewport2D).NodeUpdated(0xc0004e2000, 0x18ef680, 0xc000d5ac80, 0x1, 0x1353160, 0xc005a2fee8)
	/home/oreilly/go/src/github.com/goki/gi/gi/viewport.go:725 +0x166
github.com/goki/gi/gi.SignalViewport2D(0x18c5a00, 0xc0004e2000, 0x18bda80, 0xc000d5ac80, 0x1, 0x1353160, 0xc005a2fee8)
	/home/oreilly/go/src/github.com/goki/gi/gi/viewport.go:679 +0x134
github.com/goki/ki/ki.(*Signal).Emit(0xc000d5acd8, 0x18bda80, 0xc000d5ac80, 0x1, 0x1353160, 0xc005a2fee8)
	/home/oreilly/go/src/github.com/goki/ki/ki/signal.go:162 +0x1a5
github.com/goki/ki/ki.(*Node).UpdateEnd(0xc000d5ac80, 0x18bda01)
	/home/oreilly/go/src/github.com/goki/ki/ki/node.go:1915 +0x20a
github.com/goki/gi/gi.(*Action).ButtonRelease(0xc000d5ac80)
	/home/oreilly/go/src/github.com/goki/gi/gi/action.go:234 +0x1af
github.com/goki/gi/gi.(*ButtonBase).MouseEvent.func1(0x18bda80, 0xc000d5ac80, 0x18c6280, 0xc000be1000, 0x0, 0x14be260, 0xc00595e700)
	/home/oreilly/go/src/github.com/goki/gi/gi/buttons.go:438 +0xcd
github.com/goki/gi/gi.(*WinEventRecv).Call(0xc000fbfcf8, 0x18c6280, 0xc000be1000, 0x0, 0x14be260, 0xc00595e700)
	/home/oreilly/go/src/github.com/goki/gi/gi/events.go:116 +0x8c
github.com/goki/gi/gi.(*EventMgr).SendEventSignal(0xc000be1190, 0x1871300, 0xc00595e700, 0x1)
	/home/oreilly/go/src/github.com/goki/gi/gi/events.go:237 +0x54f
github.com/goki/gi/gi.(*Window).ProcessEvent(0xc000be1000, 0x1871300, 0xc00595e700)
	/home/oreilly/go/src/github.com/goki/gi/gi/window.go:1513 +0x79e
github.com/goki/gi/gi.(*Window).EventLoop(0xc000be1000)
	/home/oreilly/go/src/github.com/goki/gi/gi/window.go:1448 +0x36
github.com/goki/gi/gi.(*Window).StartEventLoop(0xc000be1000)
	/home/oreilly/go/src/github.com/goki/gi/gi/window.go:854 +0x6d
main.mainrun()
	/home/oreilly/go/src/github.com/CompCogNeuro/sims/ch3/face_categ/face_categ.go:824 +0x26e
main.main.func1()
	/home/oreilly/go/src/github.com/CompCogNeuro/sims/ch3/face_categ/face_categ.go:41 +0x20
github.com/goki/gi/gimain.Main.func1(0x18852c0, 0x28001a0)
	/home/oreilly/go/src/github.com/goki/gi/gimain/gimain.go:31 +0x24
github.com/goki/gi/oswin/driver/glos.Main.func1()
	/home/oreilly/go/src/github.com/goki/gi/oswin/driver/glos/app.go:87 +0x40
created by github.com/goki/gi/oswin/driver/glos.Main
	/home/oreilly/go/src/github.com/goki/gi/oswin/driver/glos/app.go:86 +0x87

Broken link for ccn_sims_v1.3.3_mac-intel.zip

The link on the repo page seems broken, it says "Not Found".
I was wondering if there is a way to fix this since a couple of students are still on Intel Macs.
While I currently advise students to download the previous version v1.3.2 (and it seems to work ok), I was not sure if there were major bug fixes or breaking changes introduced after the previous version.

Button and Text Scaling Issue on Ubuntu 18.04

Hi! Thank you for the textbook as well as the accompanying simulations! This work - Leabra - seems really exciting.

I'm currently using the simulations from ccn_sims_v1.3.1_linux.tar.gz in v1.3.1 03 Sep 2021 release along with the textbook, and have run into a few issues related to button and text scaling.

  • [Resolved] Essentially, the buttons and text are too large. This is still okay, since using an additional monitor does the trick.
  • [Partially resolved] However, in some cases, such as illustrated here, the text flows out of the buttons, thus rendering the text unreadable.

I'd be glad if someone knows about any recommended ways to resolve or work-around these issues.

a_not_b sim crashes if you hit TrnTrlTable as instructed in ReadMe

If you follow the instructions in the ReadMe for the a_not_b sim, it tells you to click the TrnTrlTable tab and then click Init, Train. If you do that the program exits. However, if you first click Init and then click the TrnTrlTable tab, everything works properly and the program does not crash.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.