247 karma · joined February 24, 2010
Imagine somebody makes a mind out of machine learning. Passes the turing test and more. It reports to "feel", ie to have qualia. Is it parroting what it hears/reads from humans? Or does it actually have a feeling when you show it an image of a sunset? At what breakpoint do you place your debugger and inspect if it is so?
Where does the dance go, when the dancers go off stage? The dancers are not the dance, but create the dance. There is some kind of duality there.
Similar for the brain. What it does creates the mind/consciousness. Should that feel like something? Why not?
How does the brain decide on next actions? By simulating/predicting futures and "feeling" which is desired, and acting towards that future. Why would that not feel like something?
The "hard question of consciousness" is not an answer. It is a philosophical device without backing. It is unknown if qualia is actually hard, maybe most learning systems have it. What we do know: it is hard to have intuitions about it ...
But if you want to use the metaphors to capture the core of what the brain does, then no, I don't think either are much good.
I would put much more emphasis on learning and surprise. Not the big kind of learning, like a new language. But learning what to expect in situational patterns. Making predictions of what might happen, and surprise when what really happened did not fit anything.
But that does not have a good metaphor from ordinary life.
Indeed and that is probably best to focus on. Conservation, should serve that goal first. And I think you will see that as you implement things you can let go of strict versions.
"Fully independent? Nothing is fully independent of the universe it resides in."
Indeed. But there are levels of independence. That is, do the laws of the simulation: 1) merely provide an environment in which there can be turing completeness. or 2) is some aspect of that turing completeness explicit in those laws. Again, redstone(2) vs RNA(1).
And in a similar vain, 3) is the world initialised with some low entropy state and merely lets that run. Or 4) is the simulator constantly randomly generating states?
If you can manage 1 and 3, that would be amazing. Anything less, might still be great, or nothing special. It will really depend on the exact nature of the simulation.
And I would wager that 1 and 3 can only be reached by simulating some sort of entropy flow that causes self-organisation + self-catalysation.
But maybe a much more compute rich universe as you seem to be planning (?) might work. You should surely try if you have ideas. My comments are by no means meant to discourage you!
---
Note that from the perspective of entropy, there are 4 levels of organisation:
a) direct, the structure is the end result of high entropy (for gravity this is globes)
b) indrect, the structure is caused by the flow, but are not the end result (for gravity this is disks, but meandering rivers, crystals or organic molecules are other examples)
c) self-catalysation, (by lack of better term) like indirect, but the structure grows more than linear because more structure creates more structure[1]
d) self-copying, like self-catalysation, but in discrete space/time steps
Somewhere after (c) you would get self selection of the faster/better copiers ... which might lead to what falls squarely in a recognisable definition of life.
[1] https://en.wikipedia.org/wiki/Autocatalytic_set
---
"But its a question of whether life is a product of information and computation, or a product of more specific principles. Who really knows."
That is an interesting saying. What would be more specific principles? And maybe looking at life from the perspective of information and computation is not the most useful?
(That is why I said turing completeness is not so important to focus on, most simulations like we are talking about here are trivially turing complete.)
"Who really knows" :) our universe is surely 1 and 3, and life is at least 3 emergent system steps away from its most fundamental laws.
Redstone in minecraft supports compute, but is not fully independent. That is, the "laws of physics" of minecraft include special rules for redstone.
RNA polymerase is fully independent, the "laws of physics" do not have special rules for RNA.
So that last thing is the interesting bit in your effort, correct?
Now you seem to hope that the second level compute comes about randomly. But for that to do anything before the end of time, the ration between:
random states that compute / all possible random states
must be reasonable. And even then, one could argue that how those random states come about should be such that it is nothing special in the "laws of physics", or it is still "cheating".What I am trying to point out, in our universe, the big bang was a shitload of energy in low entropy state. Due to gravity it started self organising. And due to many other self organising effects, we got to self copying ...
I don't think you mean the first, as that is not too interesting to your goal. The latter is unlikely. How many possible configurations are there, and how many of those can compute? Let alone compute + copy? The universe will end before a random such entity appears.
Gravity causes matter to self organise into globes with disks. Charged molecules + surface tension causes crystallisation. Organic molecules support self-catylization.
From such organising principles there is a change self-copying arises before the universe ends. Or your EC2 budget ;)
"In our universe, the speed of light is the speed of causality" In your simulation the step function is causality. I would not be too concerned if the simulator was not strict in conservation. As a matter of fact, the interesting parts of our universe have the property that they are in the middle of an entropy flow.
Just some random advice, maybe you don't find it useful, but I would not focus too much on these things ...
I would suggest it needs to be a simulation in which self-organisation is possible. But also catalyzation and self-catalyzation (autocatalysis)[1]. From there it is a small step to self-copying and thus ... evolution.
Would really want to see a simulator that allows for self copying, but does not provide that copying mechanism directly.
I am willing to confess I have pushed sharks are smooth: https://twitter.com/bransonreese/status/848746940179382272
Maybe qualia arises trivially.
[1] https://en.wikipedia.org/wiki/Hard_problem_of_consciousness
Part of what I tried is that the smallest subsections of the language would be complete and useful by themselves. Without ever having to say: "this part you do not need to understand yet". That is where the "beginner friendly" part focused on.
Not by making it "simpler" if that would sacrifice first class-ness. Say JS with its global scope promotion, maybe easier, but not first-class, clashes are inevitable.
And for example, the no import thing is based on very predictable scope rules, which can be postponed while learning, but later are completely deterministic and predictable, while still first class, so that the programmer can have control over it if needed.
But in a way it was mostly an experiment to get my thoughts clear on these matters. And for instance the concurrency things in there have less to do with beginner focus.
1) I wanted to see how far you can go by making every language concept first class, because only first class things can be an abstractions.
2) But another big motivation was that languages usually grow towards building large systems in. I wanted every tradeoff to go to the human side, making it more suitable for beginners. For example, 0.1 + 0.2 = 0.3, slower by not using native floating point numbers, but much more humane. Similar motivation to remove the import statements. Or no difference between object fields or methods, e.g. string.length is the same as string.length().
As I said, wealth redistribution is knob, currently set to around 5% (my guess) in the USA. I think 20% should be the aim over time, which translates to ~15k income in some form of UBI, and +15% tax for the rich.
That would mean a 30k income for an average 4 person household.
"Even with the highest tax bracket at 100% I don't see how it could work."
That is entirely lack of imagination on your side ... just add up all the money the top 10% makes. And it must work mathematically, because 30k is lower than average income at 51k.
The term wealth redistribution is generally understood as wealth going from the rich to the poor and is a "left" idea[1]. And even it it is not, I cannot think of a (sane) negative income tax system that can be described as wealth going from the poor to the rich.
But you seem worried that a student is different from an elderly, and to give both negative income, the elderly will be worse off than in a system like today? All I can say is that nothing in what was described so far implies that. If you have special needs, you might be eligible to more negative income tax.
"there is not enough money to give every adult citizen the equivalent of social security"
Sure there is, because a 125[2] of the 240 have a job, those who earn little, might still get some money from tax, those who make medium pay a some tax, those who make a lot, pay a lot of tax. But it will imply more tax on the rich, both income and wealth. (Though nothing ridiculous.)
[1] https://en.wikipedia.org/wiki/Redistribution_of_income_and_w... first line "Redistribution of income and redistribution of wealth are a concept of socialism"
[2] https://www.statista.com/statistics/192361/unadjusted-monthl...
Why I am in favor (of UBI or NIT)? I cannot be described as a right wing, nor as rich. And any reduced administrative overhead would be nice, but not a goal per se.
But giving more money to those without a job, or low income jobs, has a few advantages:
1. economically speaking, money to those who have little represents more wealth, and will be spend in the market
2. a shrinking economy, means even more pressure on low incomes jobs, and less who have an income at all, that shrinks the market, and shrinks the economy, NIT can work like a buffer
3. low income people have no power on the labor market, a NIT or UBI gives them more power, with room to switch jobs, or go back and study
And a last one, but this depends a bit per country/state, people are usually eligible for benefits or not. Some of those tests are income earned, or money in the bank. So when people are almost eligible, but have too much money saved, they buy an expensive car and become eligible. Or you refuse a job, because the pay is not that much more then their benefits, but suddenly they have to work 40 hours a week and commute, etc.
Especially a NIT makes sure that these things are always a line, never yes/no. Made some money? You get to keep that, and most of your NIT benefits.
In my country there are both subsidies, and tax breaks for such situations. Is anything I said implying we abolish that? I would suggest it translates to more negative tax for such situations.
"It's a far right idea that, if executed, would have horrific consequences for the poor."
It is wealth redistribution. Which is not a far right idea. Any kind of wealth redistribution is good for those who have little. (Unless you redistribute it only to the rich, but that is not commonly understood with the term.)
But you imply it does not? Would you mind doing that "napkin" math and show us what you mean?
One of the points is to give power back to those who on the labor market are almost powerless. Both forms would do that. What would the impact be? Likely price for labor goes up.
Describing only one of the options as a subsidy is not likely correct.
It is the human thing to do. But it also aligns with economics and politics.
Redistribution: because more money at the bottom, means a larger overall market, and I think a more stable economy.
Progressive tax: any paying work will always improve your situation. (So people stay motivated to work.)
Taxing wealth creation (and to a lesser extend, wealth) makes sense. It needs a society with law and order and property rights. That needs to be payed for. But of course not so much as to discourage wealth creation.
Most societies already redistribute wealth. Minimum wage, social programs, health programs, pensions, some form of subsidies. UBI is a more disciplined way of doing this. And just like these programs, you can tune that knob from low to high.
"You're severely oversimplifying here."
You can look at it from different sides. I personally think christians oversimplify more. They only take the most positive look of god, and justify all the bad stuff. In a way that sets precedent, and makes it easier to find exceptions to Jesus his teaching: "do to others what you would have them do to you."
The NT god still does not like homos, women rights, and finds slavery just fine. Would you want to be a slave? No, then don't enslave. It follows directly from Jesus, but not from the bible.
If you take away anything supernatural, Jesus his message works much better. God is all of us. The holy spirit is synergy. Heaven is progress.
Only god may judge people, like a modern state with its judiciary system. People working together are worth more than the sum of the individuals (synergy). And today we made enormous progress, Jesus healed maybe 50 lepers, science healed 5 million.
"so I think that's indicative that God is a real thing"
We get that some things are food and nourish the body, while some things, like rocks, do not. We are just molecules, but in a very specific configuration. We value some other very specific configurations.
Just like how we value food, so do we value people close to us. And more impersonally, so we value a functional society in which we can thrive.
Good is closely related to the golden rule. If somebody did it to you, would you like it, would it make society better off or worse off?
Personally I think the question of a god has only one answer: we cannot know.
But the question of the christian god, with the bible and traits like loving, good. That is easily disproven. Killing 100,000 innocent Egyptian kids? Genocide and more promise of genocide? Stoning? Hating homosexuals? Sending good people to hell? None of these things are loving or good. Or just try Mark 16:17-18, a simple test, but I have never seen it demonstrated.
Those are my reasons to not belief, and see it as bronze/iron age people writing down their myths and beliefs.
Would you mind expanding on what convinces you? If not the cosmological argument?
But I don't think that is what Joscha Bach was talking about. He said reality is very different from the dreamed up reality our brains present to us.
The only thing I can come up with is "disgust". If somebody with dirty hands touches something else, that other thing is now tainted in your mind, and the brain is pretty good at tracking what is tainted. Even if it has no physical counterpart.
Something similar for ownership. In a way, things in reality are recognized and tagged with extra information, dirty, owner, important ... etc.
Something similar for math, or money, stealing, or how society works. Yet I think most of us can easily recognize that those things are not part of reality, but part of structure humans put on top of reality to analyze it, or to share ideas about it, and work together in it.
But what idea in the mind is so far away from its counterpart in reality, that one could say the mind dreams it up? Or has no counterpart, yet the brain thinks it has. Maybe agency when we do not know the agent?
Can you give an example? Because I cannot think of any.
That we interpret the wavelength, or even the combination of wavelengths, to mean to us, say brown. Sure. But knowing how the brain does that, we can easily predict what things look brown to us and why. Including when something is brown (physically), but looks red to us, because it is surrounded by something our brains would think is a shadow, so it compensates.
"Markov Decision Model ... also called a story" :)
As for consciousness, I like his explanation. I personally think it is the brain that keeps a log of past decisions, so that when pain/pleasure comes, it can look back and see what decision to reward/punish (delayed reinforcement based learning). The moment a brain puts higher level things in decisions, like expectation of pain/pleasure, and even "I made a decision", is when self awareness comes in.
---
I disagree somewhat when he says reality looks nothing like what our brain thinks reality looks like. With different sensors, sure it would all look very different. But not like reality is a cellular automata, and our sensors register that stuff raw, yet our brains imagine (dream) the patterns as objects and people with colors and sounds.
Our sensors see by the laws of physics, seeing objects with properties made possible by the laws of physics. That underlying those laws might be something entirely different, perhaps. But the translation from that underlying thing happened before the light hit your eye, not in the brain. E.g. color is a property of reality, not of the brain.
A completely different effect is that the "picture" we are get in our brain, is heavily pre processed and filtered and predicted. So the color that we notice, and what light has hit our eyes, those are not the same.
Would be interesting to know what he ment by that.
That is the misunderstanding. It will send one non full packet, and only then "hold on to data" until the next packet is a full packet. But that condition will reset when all data has been acknowledged. If you buffer in userspace and write data in one go, at 25 network fps, you basically never trigger the condition where TCP_NODELAY makes a difference.
It is not nagle's algorithm, but a variant of minshall-nagle, what modern systems use.
There is a reason why FPS games use UDP, but that discussion should not start with TCP_NODELAY. That one is misused enough ... often when it fixes anything, it is because it masks a real underlying problem, had you fixed that problem, your system would react much better under stress or bad networks.
That fixes nothing. Now you are sending too many small packets using too many syscalls. Just like UDP, buffer in user space, send in one go. If you do that, TCP_NODELAY makes no difference. (The exception is user input, if you want to send those as they happen, use TCP_NODELAY, but think about the why ... it has little to do with what this article is talking about.)
Games likely send data only around 25 times per second, and ping is likely < 50ms. Waiting on a dropped packet and the delay it causes is unnoticeable. Added that clients will need some kind of latency compensation and prediction, independent of the TCP/UDP choice. Delays and then bursts of 100ms or such are doable.
The problem starts when the connection stalls for more than 100ms, especially in high bandwidth games. During the stall both behave the same. After the stall, TCP will be playing catchup and wasting more time receiving outdated data, and handing it to user space in order. UDP just passes on what is received, with a lot less catching up, and maybe some dropping of packets.
But gameplay has been degraded in both cases. UDP just has a higher chance of masking and shortening degradation more.
Anything more than that is basically cargo-culting, like this article.