An old Microsoft buddy of mine hosted a party at his house a week or so ago, and I got to chat at length with someone who's currently heavily involved with ChatGPT. I shared my idea for building an AI to stabilize a rotating space station, and he agreed with me. "Yeah, that'll almost certainly work."The idea generalizes to other space applications, so it's worth restating here. The key assumption is that you have software that can model what a system (like a space station) will actually do. That lets you avoid creating the vast amounts of labeled training data that you need to make a large deep-network AI system work.
So imagine that you have a model for a rotating space station that you can run simulations on.
This would include various sources of perturbation, such as people moving around, spacecraft docking, etc. It would also include some sort of stabilization method, e.g. cables that move weights around, pipes to move water (or mercury) around, rocket engines to apply thrust, etc.
To train the system, you start without using the equipment and just measure how long it takes the station to become unstable.
If you have a model that's good enough to train AI you have a model that's good enough to apply undergraduate engineering to. We know how to solve this problem from first principles.
Speaking of that, it seems many out there who believe AI is the greatest thing since Elon Musk conveniently forget AI's core principle is still, like any other computer system since the dawn of the Information Age, very much "Garbage In, Garbage Out". So much so, there's an entirely new set of job opportunities opening up out there for those undergraduates you mention:https://www.forbes.com/sites/jodiecook/2023/07/12/ai-prompt-engineers-earn-300k-salaries-heres-how-to-learn-the-skill-for-free/?sh=266e45a39d4a
By 2025, if you aren't using an AI assistant to code, you aren't going to be considered a productive coder anymore.I already know a couple of shops where this is the case right now.
Interesting talk by Stephen Wolfram:
Quote from: sanman on 08/19/2023 02:16 amInteresting talk by Stephen Wolfram:{video removed}If you missed this take another look, far from advanced search engine function. This leader in scientific software applications is using AI to make a difference now.
Interesting talk by Stephen Wolfram:{video removed}
Sure, lots of A.I. advancements as we enter the 3rd wave of A.I.But how does this specifically apply to space applications?
Anyway, more on topic - I'd like to ask how AI can be used to design better rockets/spacecraft/ground-infrastructure/etc?I thought I'd specifically ask about Reinforcement Learning, since that seems to be a hot topic these days: How can RL be used to design the best possible launch vehicle?Imagine our rocket ("agent") is a shapeshifter, and so its "action" is to change its structure/design. The goal is for it to progressively alter itself into a better and better structure/design that maximizes its reward (most payload to LEO at lowest $/kg). Eventually the MDP should reach some idealized structure/design which best meets this goal. Physics simulation would be employed to evaluate the performance of each structure/design iteration in relation to the goal.Would something like this work? Is anything like this already being used, even if under somewhat different terminology/nomenclature?Whether designing a launch vehicle or a moonbase, the goal would be to provide the simplest, easiest, most convenient high-level input possible, and get the most useful results in return.
This seems to describe an instance of a general engineering AI. Sounds harder than getting an AI to plan a bridge, or an electric motor. I'm not sure anybody's gotten either one of those to work yet. And yet we have millennia worth of practice designing new bridges for each new gap we want to span. Off the top of my head I'm not sure if you could reduce an electric motor to a set of scalar inputs and a fitness function. And then that fitness function sounds nightmarishly difficult. I imagine you would have to encode a large fraction of the field of industrial engineering into a computer program in order to calculate manufacturing costs. How would you even encode the amount of manufacturing variation a part will exhibit as a function of the length of a metal pipe? Even if you can get one program to fiddle with scalar values for the length, diameter and thickness of a pipe piece... how do you generalize the fluid behaviours inside that pipe to any possible combination? And then the results of that determine whether the other parts connected to it work at all. Really, it determines what things are even well plausible to have there.
This seems to describe an instance of a general engineering AI. Sounds harder than getting an AI to plan a bridge, or an electric motor. I'm not sure anybody's gotten either one of those to work yet. And yet we have millennia worth of practice designing new bridges for each new gap we want to span. Off the top of my head I'm not sure if you could reduce an electric motor to a set of scalar inputs and a fitness function. And then that fitness function sounds nightmarishly difficult. I imagine you would have to encode a large fraction of the field of industrial engineering into a computer program in order to calculate manufacturing costs. How would you even encode the amount of manufacturing variation a part will exhibit as a function of the length of a metal pipe? Even if you can get one program to fiddle with scalar values for the length, diameter and thickness of a pipe piece... how do you generalize the fluid behaviours inside that pipe to any possible combination? And then the results of that determine whether the other parts connected to it work at all. Really, it determines what things are even well plausible to have there.Likewise, the comment about providing high-level inputs to a program reminds me of Prolog and the 1980s attempt at "fifth-generation programming languages". Programming by specifying constraints on a problem space. Nobody's fared very well with that yet.
That was the old way. Software 1.0.Laboriously tell the computer (in excruciating detail) exactly what you want it to do. "Are the algorithms in the room with us right now?"In Software 2.0 there's only examples and training compute. Add to a bubbling cauldron and stir.
Quote from: Solarsail on 11/19/2023 10:27 pmThis seems to describe an instance of a general engineering AI. Sounds harder than getting an AI to plan a bridge, or an electric motor. I'm not sure anybody's gotten either one of those to work yet. And yet we have millennia worth of practice designing new bridges for each new gap we want to span. Off the top of my head I'm not sure if you could reduce an electric motor to a set of scalar inputs and a fitness function. And then that fitness function sounds nightmarishly difficult. I imagine you would have to encode a large fraction of the field of industrial engineering into a computer program in order to calculate manufacturing costs. How would you even encode the amount of manufacturing variation a part will exhibit as a function of the length of a metal pipe? Even if you can get one program to fiddle with scalar values for the length, diameter and thickness of a pipe piece... how do you generalize the fluid behaviours inside that pipe to any possible combination? And then the results of that determine whether the other parts connected to it work at all. Really, it determines what things are even well plausible to have there.Likewise, the comment about providing high-level inputs to a program reminds me of Prolog and the 1980s attempt at "fifth-generation programming languages". Programming by specifying constraints on a problem space. Nobody's fared very well with that yet.But why can't we have a General Engineering AI? We already have a General Software Engineering AI:If you can do it with programming, then how much more difficult is it to extend this approach beyond just software engineering to architectural engineering, electronics engineering, automotive engineering, aerospace engineering, etc?We need to gather up all the CAD files, and train our AI models on them. We'd preferably want CAD files with as many annotations as possible, to more intimately connect them to Large Language Models which can parse our high-level specifications.Data is the new oil. Annotated CAD files could be the new RP-1.
Create OpenSCAD code for a basic toy car.
Sure, here is a simple OpenSCAD code for a basic toy car. This code will create a car with a body and four wheels.```scad// Car Bodytranslate([0, 0, 10])cube([40, 20, 10]);// Wheelscylinder(h=5, r=10);translate([35, 0, 0])cylinder(h=5, r=10);translate([0, 15, 0])cylinder(h=5, r=10);translate([35, 15, 0])cylinder(h=5, r=10);```This is a very basic model. You can modify the dimensions and positions to create a more complex model. Remember to install and open OpenSCAD, then paste this code into the editor and press F5 to render the 3D model. Enjoy your 3D modeling! 😊