{"version":10,"randomSeed":"1c13e3c48c301392a07518922b6162b5","graph":{"viewport":{"xmin":-0.5042027271290608,"ymin":-0.9252988077194798,"xmax":1.5260098915725653,"ymax":2.1159651017869505}},"expressions":{"list":[{"type":"text","id":"2","text":"inspired by \"Practical Point Packing\" by Alan Whitman (2023)"},{"type":"expression","id":"3","color":"#2d70b3","latex":"N=50","slider":{"hardMin":true,"min":"1","step":"1"}},{"type":"folder","id":"46","title":"data","collapsed":true},{"type":"expression","id":"6","folderId":"46","color":"#c74440","latex":"P=\\left[\\left(0.5406337438604323,0.7072873345165627\\right),\\left(1,0.8285483405147298\\right),\\left(0,0.3293528948227809\\right),\\left(0.6991972648841834,0\\right),\\left(1,0.32255071474608965\\right),\\left(0.8508495695757712,0\\right),\\left(0,0\\right),\\left(0.5431467700700447,0.22375564311221557\\right),\\left(1,0.671372006528481\\right),\\left(0.730725173439376,0.33482043872623285\\right),\\left(0,0.17131419767138328\\right),\\left(0.5028035972003435,1\\right),\\left(0.26475711039281913,0.7088962902012066\\right),\\left(1,1\\right),\\left(0.16083212752861212,0.4211864807306654\\right),\\left(0.680473305018956,1\\right),\\left(1,0\\right),\\left(0.1477799814071453,1\\right),\\left(0.14475354261964746,0.5863655010983021\\right),\\left(0.31773524346290327,1\\right),\\left(0.2765926342353063,0.8492273033892691\\right),\\left(0.37761251252636263,0.29795084215141854\\right),\\left(0,1\\right),\\left(0.14497401928912185,0.26430728617997307\\right),\\left(0.5262353526386064,0\\right),\\left(1,0\\right),\\left(0.3009250719129793,0.5028865303348897\\right),\\left(0,0.6777775414922976\\right),\\left(0.12580502220877499,0.7541293191321586\\right),\\left(0.4339942750655776,0.8396075965777672\\right),\\left(1,0.49944585202388514\\right),\\left(0.6801544038929445,0.6699874521683113\\right),\\left(0.3368784934023204,0\\right),\\left(0.8701198639421907,0.5736804485770034\\right),\\left(0.27467007789618403,0.15835006457878736\\right),\\left(0.765248481150383,0.8736312997369002\\right),\\left(0.4427314454909655,0.5787062106092414\\right),\\left(0.846581078512098,1\\right),\\left(0.8708724483498941,0.22259683457343926\\right),\\left(1,0.14497320661440108\\right),\\left(0.4309325943672286,0.13413690711250223\\right),\\left(0.5802197319441242,0.8684541831698044\\right),\\left(0,0.8141356997435899\\right),\\left(0.6790423218892712,0.15083188455703114\\right),\\left(0.8837909683643809,0.757684145543483\\right),\\left(0,0.5229780240818191\\right),\\left(0.5174610206536264,0.4094169210365562\\right),\\left(0.14872545200893372,0\\right),\\left(0.8634304903646904,0.40937107518607546\\right),\\left(0.7062557360104245,0.5055386916156134\\right)\\right]","pointOpacity":"1","pointSize":"20"},{"type":"expression","id":"40","color":"#2d70b3","latex":"R=\\left(P\\to\\left(\\operatorname{random}\\left(N\\right),\\operatorname{random}\\left(N\\right)\\right)\\right)"},{"type":"text","id":"29","text":"list of index-pairs"},{"type":"expression","id":"9","color":"#388c46","latex":"L_{D}=\\left[\\left\\{i=j:\\left\\{i=N:\\left(1,i\\right),\\left(i,i+1\\right)\\right\\},\\left(i,j\\right)\\right\\}\\operatorname{for}i=\\left[1...N\\right],j=\\left[1...N\\right]\\right]","hidden":true},{"type":"expression","id":"8","color":"#2d70b3","latex":"L_{DS}=\\operatorname{sort}\\left(L_{D},\\left[\\operatorname{distance}\\left(P\\left[p.x\\right],P\\left[p.y\\right]\\right)\\operatorname{for}p=L_{D}\\right]\\right)","hidden":true},{"type":"text","id":"33","text":"closest points"},{"type":"expression","id":"47","color":"#2d70b3","latex":"c=7","slider":{"hardMin":true,"hardMax":true,"min":"1","max":"N","step":"1"}},{"type":"expression","id":"21","color":"#6042a6","latex":"A=L_{DS}\\left[c\\right].x"},{"type":"expression","id":"22","color":"#000000","latex":"B=L_{DS}\\left[c\\right].y"},{"type":"text","id":"44","text":"criterion to minimise"},{"type":"expression","id":"42","color":"#6042a6","latex":"\\frac{1}{\\operatorname{distance}\\left(P\\left[A\\right],P\\left[B\\right]\\right)}"},{"type":"text","id":"35","text":"decreasing opacity for further points (highlight what needs to be fixed)"},{"type":"expression","id":"15","color":"#6042a6","latex":"L_{b}=\\left[\\frac{1}{k}\\operatorname{for}k=\\left[1...N^{2}\\right]\\right]"},{"type":"text","id":"38","text":"edges between point-pairs"},{"type":"expression","id":"10","color":"#000000","latex":"\\left[\\operatorname{polygon}\\left(P\\left[q.x\\right],P\\left[q.y\\right]\\right)\\operatorname{for}q=L_{DS}\\right]","hidden":true,"fill":false,"lineOpacity":"L_{b}"},{"type":"text","id":"20","text":"insert element as replacement, R^n -> N -> {R, R^2} -> R^n"},{"type":"expression","id":"18","color":"#2d70b3","latex":"I\\left(L,i,x\\right)=\\left\\{i=1:\\operatorname{join}\\left(x,L\\left[2...\\right]\\right),i=\\operatorname{length}\\left(L\\right):\\operatorname{join}\\left(L\\left[1...\\operatorname{length}\\left(L\\right)-1\\right],x\\right),\\operatorname{join}\\left(L\\left[1...i-1\\right],x,L\\left[i+1...\\right]\\right)\\right\\}"},{"type":"text","id":"27","text":"jerk u away from v"},{"type":"expression","id":"25","color":"#388c46","latex":"J\\left(u,v\\right)=\\left(\\min\\left(\\max\\left(u.x-d\\left(v.x-u.x\\right),0\\right),1\\right),\\min\\left(\\max\\left(u.y-d\\left(v.y-u.y\\right),0\\right),1\\right)\\right)"},{"type":"expression","id":"39","color":"#c74440","latex":"d=0.3","slider":{"hardMin":true,"min":"0"}},{"type":"expression","id":"17","color":"#c74440","latex":"S_{I}=\\left(P\\to I\\left(I\\left(P,A,J\\left(P\\left[A\\right],P\\left[B\\right]\\right)\\right),B,J\\left(P\\left[B\\right],P\\left[A\\right]\\right)\\right),c\\to\\operatorname{ceil}\\left(\\sqrt{N}\\operatorname{random}\\left(\\right)\\right)\\right)"}],"ticker":{"handlerLatex":"S_{I}","minStepLatex":"50","open":true}}}