#! /usr/bin/env lua require("lfann") function eq(x, y) return math.abs(x - y) < 0.00001 end for i = 1, 300 do local net = fann.Net.create_standard({2, 3, 2}) local layers = net:get_layer_array() assert(#layers == 3) assert(layers[1] == 2) assert(layers[2] == 3) assert(layers[3] == 2) local layers = net:get_bias_array() assert(#layers == 3) assert(layers[1] == 1) assert(layers[2] == 1) assert(layers[3] == 0) net:set_weight(2, 6, 0.67) net:set_weight(3, 6, 0.89) local conn = net:get_connection_array() assert(#conn == 7) assert(eq(conn[2][6], 0.67)) assert(eq(conn[3][6], 0.89)) net = fann.Net.create_sparse(0.5, {2, 3, 2}) local layers = net:get_layer_array() assert(#layers == 3) assert(layers[1] == 2) assert(layers[2] == 3) assert(layers[3] == 2) net = fann.Net.create_shortcut({2, 3, 2}) local layers = net:get_layer_array() assert(#layers == 3) assert(layers[1] == 2) assert(layers[2] == 3) assert(layers[3] == 2) net = fann.Net.create_from_file("xor.test") local layers = net:get_layer_array() assert(#layers == 3) assert(layers[1] == 2) assert(layers[2] == 3) assert(layers[3] == 1) net = net:copy() local layers = net:get_layer_array() assert(#layers == 3) assert(layers[1] == 2) assert(layers[2] == 3) assert(layers[3] == 1) for c = 1, 300 do net:set_callback( function() end, 100 ) end collectgarbage() end print("End.") if arg[1] == "mem" then io.read("*n") end