Skip to content

Commit ae5a44a

Browse files
author
lukas.molzberger
committed
- Added some debug output
1 parent 0bcecc0 commit ae5a44a

File tree

13 files changed

+65
-36
lines changed

13 files changed

+65
-36
lines changed

fields/src/main/java/network/aika/enums/sign/Negative.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ public Sign invert() {
4141
@Override
4242
public <D extends Type<D, O>, O extends Obj<D, O>> FieldDefinition<D, O> getValue(D ref, FieldDefinition<D, O> v) {
4343
return InvertFunction.invert(ref, NEGATION)
44-
.in(v.getFieldOutput(), argLink(0));
44+
.in(v.getFieldOutput(), v.getFieldOutput().getFieldTag(), argLink(0));
4545
}
4646

4747
@Override

fields/src/main/java/network/aika/fielddefs/FieldDefinition.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -58,25 +58,25 @@ public FieldDefinition(Class<? extends Field> clazz, T objectType, FieldTag fiel
5858
this.tolerance = tolerance;
5959
}
6060

61-
public FieldDefinition<T, O> in(FieldOutputDefinition fieldOutDef, FieldLinkTypeDefinition flType) {
61+
public FieldDefinition<T, O> in(FieldOutputDefinition fieldOutDef, FieldTag targetFieldDocu, FieldLinkTypeDefinition flType) {
6262
Function<O, FieldOutput> pathProvider = o -> o.getFieldOutput(fieldOutDef.getFieldTag());
6363
FieldInputDefinition out = objectType.getFieldInput(getFieldTag());
64-
out.addInput(new InputFieldLinkDefinition(pathProvider, flType));
64+
out.addInput(new InputFieldLinkDefinition(pathProvider, targetFieldDocu, flType));
6565

6666
return this;
6767
}
6868

69-
public FieldDefinition<T, O> in(Function<O, FieldOutput> pathProvider, FieldLinkTypeDefinition flType) {
69+
public FieldDefinition<T, O> in(Function<O, FieldOutput> pathProvider, FieldTag targetFieldDocu, FieldLinkTypeDefinition flType) {
7070
FieldInputDefinition out = objectType.getFieldInput(getFieldTag());
71-
out.addInput(new InputFieldLinkDefinition(pathProvider, flType));
71+
out.addInput(new InputFieldLinkDefinition(pathProvider, targetFieldDocu, flType));
7272

7373
return this;
7474
}
7575

76-
public FieldDefinition<T, O> out(Function<O, FieldInput> pathProvider, FieldLinkTypeDefinition flType) {
76+
public FieldDefinition<T, O> out(Function<O, FieldInput> pathProvider, FieldTag targetFieldDocu, FieldLinkTypeDefinition flType) {
7777
FieldOutputDefinition in = objectType.getFieldOutput(getFieldTag());
7878

79-
in.addOutput(new OutputFieldLinkDefinition(pathProvider, flType));
79+
in.addOutput(new OutputFieldLinkDefinition(pathProvider, targetFieldDocu, flType));
8080

8181
return this;
8282
}

fields/src/main/java/network/aika/fielddefs/link/FieldLinkDefinition.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package network.aika.fielddefs.link;
22

3+
import network.aika.fielddefs.FieldTag;
34
import network.aika.fields.FieldInput;
45
import network.aika.fields.FieldOutput;
56
import network.aika.fields.link.FieldLink;
@@ -8,9 +9,11 @@
89
public abstract class FieldLinkDefinition {
910

1011
private FieldLinkTypeDefinition typeDefinition;
12+
private FieldTag targetFieldDocu;
1113

12-
public FieldLinkDefinition(FieldLinkTypeDefinition typeDefinition) {
14+
public FieldLinkDefinition(FieldLinkTypeDefinition typeDefinition, FieldTag targetFieldDocu) {
1315
this.typeDefinition = typeDefinition;
16+
this.targetFieldDocu = targetFieldDocu;
1417
}
1518

1619
public FieldLinkTypeDefinition getTypeDefinition() {
@@ -20,4 +23,9 @@ public FieldLinkTypeDefinition getTypeDefinition() {
2023
public FieldLink instantiate(FieldOutput input, FieldInput output) {
2124
return typeDefinition.instantiate(input, output);
2225
}
26+
27+
@Override
28+
public String toString() {
29+
return "" + typeDefinition + " -> " + targetFieldDocu;
30+
}
2331
}

fields/src/main/java/network/aika/fielddefs/link/FixedFieldLinkDefinition.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,4 +40,9 @@ public FieldLink instantiate(FieldOutput input, FieldInput output) {
4040
public Integer getArg() {
4141
return arg;
4242
}
43+
44+
@Override
45+
public String toString() {
46+
return "FIXED(" + arg + ")";
47+
}
4348
}

fields/src/main/java/network/aika/fielddefs/link/InputFieldLinkDefinition.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,8 @@ public class InputFieldLinkDefinition<T extends Type<T, O>, O extends Obj<T, O>>
3737

3838
private Function<O, FieldOutput> pathProvider;
3939

40-
public InputFieldLinkDefinition(Function<O, FieldOutput> pathProvider, FieldLinkTypeDefinition typeDefinition) {
41-
super(typeDefinition);
40+
public InputFieldLinkDefinition(Function<O, FieldOutput> pathProvider, FieldTag targetFieldDocu, FieldLinkTypeDefinition typeDefinition) {
41+
super(typeDefinition, targetFieldDocu);
4242
this.pathProvider = pathProvider;
4343
}
4444

@@ -67,4 +67,9 @@ public FieldLink instantiateAndLink(FieldOutput input, FieldInput output) {
6767

6868
return fl;
6969
}
70+
71+
@Override
72+
public String toString() {
73+
return "OUT " + super.toString();
74+
}
7075
}

fields/src/main/java/network/aika/fielddefs/link/OutputFieldLinkDefinition.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
import network.aika.enums.Direction;
2121
import network.aika.fielddefs.FieldOutputDefinition;
22+
import network.aika.fielddefs.FieldTag;
2223
import network.aika.fielddefs.Type;
2324
import network.aika.fields.Field;
2425
import network.aika.fields.FieldInput;
@@ -40,8 +41,8 @@ public class OutputFieldLinkDefinition<T extends Type<T, O>, O extends Obj<T, O>
4041

4142
private Function<O, FieldInput> pathProvider;
4243

43-
public OutputFieldLinkDefinition(Function<O, FieldInput> pathProvider, FieldLinkTypeDefinition typeDefinition) {
44-
super(typeDefinition);
44+
public OutputFieldLinkDefinition(Function<O, FieldInput> pathProvider, FieldTag targetFieldDocu, FieldLinkTypeDefinition typeDefinition) {
45+
super(typeDefinition, targetFieldDocu);
4546

4647
this.pathProvider = pathProvider;
4748
}
@@ -71,4 +72,9 @@ public FieldLink instantiateAndLink(FieldOutput input, FieldInput output) {
7172

7273
return fl;
7374
}
75+
76+
@Override
77+
public String toString() {
78+
return "OUT " + super.toString();
79+
}
7480
}

fields/src/main/java/network/aika/fielddefs/link/VariableFieldLinkDefinition.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,4 +25,9 @@ public class VariableFieldLinkDefinition extends FieldLinkTypeDefinition {
2525
public VariableFieldLinkDefinition(boolean propagateUpdates) {
2626
super(propagateUpdates);
2727
}
28+
29+
@Override
30+
public String toString() {
31+
return "VARIABLE";
32+
}
2833
}

model/src/main/java/network/aika/model/BindingDef.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -116,10 +116,10 @@ public void initNodes() {
116116
sum(activation, UPDATE_VALUE);
117117

118118
activation.getState(OUTER_FEEDBACK).getField(NET)
119-
.in(o -> o.getActivation().getState(NON_FEEDBACK).getFieldOutput(NET), varLink());
119+
.in(o -> o.getActivation().getState(NON_FEEDBACK).getFieldOutput(NET), NET, varLink());
120120

121121
activation.getState(INNER_FEEDBACK).getField(NET)
122-
.in(o -> o.getActivation().getState(OUTER_FEEDBACK).getFieldOutput(NET), varLink());
122+
.in(o -> o.getActivation().getState(OUTER_FEEDBACK).getFieldOutput(NET), NET, varLink());
123123

124124

125125
neuron = new NeuronDefinition(
@@ -337,8 +337,8 @@ public void initRelations() {
337337
max(negativeFeedbackLink, INPUT_VALUE);
338338

339339
negativeWeight = scale(negativeFeedbackLink, NEGATIVE_WEIGHT, -1)
340-
.in(o -> o.getSynapse().getFieldOutput(WEIGHT), argLink(0))
341-
.out(o -> o.getOutput().getState(negativeFeedbackSynapse.outputState()).getFieldInput(NET), varLink(false));
340+
.in(o -> o.getSynapse().getFieldOutput(WEIGHT), WEIGHT, argLink(0))
341+
.out(o -> o.getOutput().getState(negativeFeedbackSynapse.outputState()).getFieldInput(NET), NET, varLink(false));
342342

343343

344344
relationInputLink = new LinkDefinition(
@@ -432,10 +432,10 @@ public void initRelations() {
432432

433433

434434
identity(bindingLink, INPUT_VALUE) // TODO: check if a placeholder field can be used
435-
.in(o -> o.getInput().getState(INNER_FEEDBACK).getFieldOutput(NET), argLink(0));
435+
.in(o -> o.getInput().getState(INNER_FEEDBACK).getFieldOutput(NET), NET, argLink(0));
436436

437437
identity(sameObjectLink, INPUT_VALUE) // TODO: check if a placeholder field can be used
438-
.in(o -> o.getInput().getState(OUTER_FEEDBACK).getFieldOutput(NET), argLink(0));
438+
.in(o -> o.getInput().getState(OUTER_FEEDBACK).getFieldOutput(NET), NET, argLink(0));
439439

440440
}
441441

model/src/main/java/network/aika/model/ConjunctiveDef.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,8 +117,8 @@ public void initRelations() {
117117
.setQueued(TRAINING);
118118

119119
identity(link, SYNAPSE_BIAS)
120-
.in(o -> o.getSynapse().getFieldOutput(SYNAPSE_BIAS), argLink(0))
121-
.out(o -> o.getOutput().getState(NON_FEEDBACK).getFieldInput(NET), varLink());
120+
.in(o -> o.getSynapse().getFieldOutput(SYNAPSE_BIAS), SYNAPSE_BIAS, argLink(0))
121+
.out(o -> o.getOutput().getState(NON_FEEDBACK).getFieldInput(NET), NET, varLink());
122122
}
123123

124124
@Override

model/src/main/java/network/aika/model/DisjunctiveDef.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -106,9 +106,9 @@ public void initRelations() {
106106
identity(outputSlot, SLOT);
107107

108108
mul(link, WEIGHT_UPDATE)
109-
.in(o -> o.getFieldOutput(INPUT_IS_FIRED), argLink(0))
110-
.in(o -> o.getOutput().getFieldOutput(UPDATE_VALUE), argLink(1))
111-
.out(o -> o.getSynapse().getFieldInput(WEIGHT), varLink());
109+
.in(o -> o.getFieldOutput(INPUT_IS_FIRED), INPUT_IS_FIRED, argLink(0))
110+
.in(o -> o.getOutput().getFieldOutput(UPDATE_VALUE), UPDATE_VALUE, argLink(1))
111+
.out(o -> o.getSynapse().getFieldInput(WEIGHT), WEIGHT, varLink());
112112
}
113113

114114
@Override

0 commit comments

Comments
 (0)