The Future of Artificial Intelligence

Last week we covered the past and current state of artificial intelligence — what modern AI looks like, the differences between weak and strong AI, AGI, and some of the philosophical ideas about what constitutes consciousness. Weak AI is already all around us, in the form of software dedicated to performing specific tasks intelligently. Strong AI is the ultimate goal, and a true strong AI would resemble what most of us have grown familiar with through popular fiction.

Artificial General Intelligence (AGI) is a modern goal many AI researchers are currently devoting their careers to in an effort to bridge that gap. While AGI wouldn’t necessarily possess any kind of consciousness, it would be able to handle any data-related task put before it. Of course, as humans, it’s in our nature to try to forecast the future, and that’s what we’ll be talking about in this article. What are some of our best guesses about what we can expect from AI in the future (near and far)? What possible ethical and practical concerns are there if a conscious AI were to be created? In this speculative future, should an AI have rights, or should it be feared?

Continue reading “The Future of Artificial Intelligence”

AI and the Ghost in the Machine

The concept of artificial intelligence dates back far before the advent of modern computers — even as far back as Greek mythology. Hephaestus, the Greek god of craftsmen and blacksmiths, was believed to have created automatons to work for him. Another mythological figure, Pygmalion, carved a statue of a beautiful woman from ivory, who he proceeded to fall in love with. Aphrodite then imbued the statue with life as a gift to Pygmalion, who then married the now living woman.

chateau_de_versailles_salon_des_nobles_pygmalion_priant_venus_danimer_sa_statue_jean-baptiste_regnault
Pygmalion by Jean-Baptiste Regnault, 1786, Musée National du Château et des Trianons

Throughout history, myths and legends of artificial beings that were given intelligence were common. These varied from having simple supernatural origins (such as the Greek myths), to more scientifically-reasoned methods as the idea of alchemy increased in popularity. In fiction, particularly science fiction, artificial intelligence became more and more common beginning in the 19th century.

But, it wasn’t until mathematics, philosophy, and the scientific method advanced enough in the 19th and 20th centuries that artificial intelligence was taken seriously as an actual possibility. It was during this time that mathematicians such as George Boole, Bertrand Russel, and Alfred North Whitehead began presenting theories formalizing logical reasoning. With the development of digital computers in the second half of the 20th century, these concepts were put into practice, and AI research began in earnest.

Over the last 50 years, interest in AI development has waxed and waned with public interest and the successes and failures of the industry. Predictions made by researchers in the field, and by science fiction visionaries, have often fallen short of reality. Generally, this can be chalked up to computing limitations. But, a deeper problem of the understanding of what intelligence actually is has been a source a tremendous debate.

Despite these setbacks, AI research and development has continued. Currently, this research is being conducted by technology corporations who see the economic potential in such advancements, and by academics working at universities around the world. Where does that research currently stand, and what might we expect to see in the future? To answer that, we’ll first need to attempt to define what exactly constitutes artificial intelligence.

Continue reading “AI and the Ghost in the Machine”

Quick and Easy IoT Prototyping with Involt

IoT, web apps, and connected devices are all becoming increasingly popular. But, the market still resembles a wild west apothecary, and no single IoT ecosystem or architecture seems to be the one bottle of snake oil we’ll all end up using. As such, we hackers are keen to build our own devices, instead of risking being locked into an IoT system that could become obsolete at any time. But, building an IoT device and interface takes a wide range of skills, and those who are lacking skill in the dark art of programming might have trouble creating a control app for their shiny new connected-thing.

Enter Involt, which is a framework for building hardware control interfaces using HTML and CSS. The framework is built on Node-Webkit, which means the conventions should be familiar to those with a bit of web development background. Hardware interactions (on Arduinos) are handled with simple CSS classes. For example, a button might contain a CSS class which changes an Arduino pin from high to low.

Involt can take that CSS and convert it into a function, which is then sent to the Arduino via serial or Bluetooth communication. For more advanced functionality, Javascript (or really any other language) can be used to define what functions are generated — and, in turn, sent to the Arduino. But, all that is needed for the basic functionality necessary for many IoT devices (which might only need to be turned on and off, or set to a certain value) is a bit of HTML and CSS knowledge. You’ll create both the interface and the underlying hardware interactions all within an HTML layout with CSS styling and functionality.

While Involt isn’t the only framework to simplify hardware interaction (it’s not even the only Node.js based method), the simplicity is definitely laudable. For those who are just getting started with these sorts of devices, Involt can absolutely make the process faster and less painful. And, even for those who are experienced in this arena, the speed and efficiency of prototyping with Involt is sure to be useful.

How to Levitate 100lbs

Most of our readers are already going to be familiar with how electromagnets work — a current is induced (usually with a coil) in a ferrous core, and that current aligns the magnetic domains present in the core. Normally those domains are aligned randomly in such a way that no cumulative force is generated. But, when the electric field created by the coil aligns them a net force is created, and the core becomes a magnet.

As you’d expect, this is an extremely useful concept, and electromagnets are used in everything from electric motors, to particle accelerators, to Beats by Dre headphones. Another use that you’re probably familiar with from your high school physics class is levitation. When two magnets are oriented with the same pole towards each other, they repel instead of attract. The same principle applies to electromagnets, so that an object can be levitated using good ol’ electricity.

That, however, isn’t the only way to levitate something using magnets. As shown in the video below, permanent magnets can be used to induce a current in conductive material, which in turn exerts a magnetic field. The permanent magnets induce that current simply by moving — in this case on rotors spun by electric motors. If the conductive material is placed below the magnets (like in the video), it will push back and you’ve got levitation.

Continue reading “How to Levitate 100lbs”

Acoustic Accordion Becomes MIDI; Oh the Complexity!

Everyone knows accordions are cool — they look fly, make neat noises, and get your romantic interests all hot and bothered. What isn’t cool is being relegated to acoustics only. How are you going to play a packed stadium or lay down a crystal clear track like that? You could go out and buy an electric accordion, but even low-end models carry a hefty price tag. But, this is Hackaday, and you know we’re going to be telling you about someone who found a better way.

That better way, shown in a build by [Brendan Vavra], was to take an acoustic accordion and convert it to MIDI. The base for his build was a decent full-size acoustic accordion purchased on eBay for just $150. Overall, it was in good mechanical condition, but some of the reeds were out of tune or not working at all. Luckily, that didn’t matter, since he wouldn’t be using them anyway. Don’t be fooled in the demo video below; it sounds like he’s playing the acoustic according but notice he’s not pumping those bellows! However, the bellows isn’t useless either since it can feed data back as a MIDI input.

[Brendan’s] build plan called for an Arduino Mega to be tied to a series of photo-interrupters that would detect button pushes and fire MIDI signals. But, first he had to take the thing apart — no small task, given the complexity of the instrument. The accordion has 120 buttons, and they’re not interchangeable, which means he had to carefully keep track of them as they were disassembled.

Continue reading “Acoustic Accordion Becomes MIDI; Oh the Complexity!”

The Soda Locker Vending Machine

With the rising popularity of electronic textbooks and laptops being used for schoolwork, the ubiquitous high school locker is becoming less and less necessary. So, students are left with a private storage space that they don’t really need. Why let it go to waste when you’re an enterprising young man with budding electronics and fabrication skills?

[Mistablik] is one such high school student who decided to take advantage of his unused locker. After a “wouldn’t it be cool if…” discussion with his friends, [Mistablik] decided to use his summer break to construct a soda vending machine that fit entirely within his school locker. Quite an ambitious project for a high school student, but the result speaks for itself.

Continue reading “The Soda Locker Vending Machine”

Add Broken Tool Detection to Your CNC Mill

A tool breaking in the midst of a CNC machining operation is always a disaster. Not only do you have a broken tool (no small expense), but if the program continues to run there is a good chance it’ll end up ruining your part too. In particularly bad cases, it’s even possible to for this to damage the machine itself. However, if the breakage is detected soon enough, the program can be stopped in time to salvage the part and avoid damage to your machine.

Many new machining centers have the ability to automatically detect tool breaks, but this is a feature missing from older machines (and inexpensive modern machines). To address this issue, [Wiley Davis] came up with a process for adding broken tool detection to an older Haas mill. The physical modifications are relatively minor: he simply added a limit switch wired to the existing (but unused) M-Function port on the Haas control board. This port is used to expand the functionality of the machine, but [Wiley] didn’t need it anyway.

Continue reading “Add Broken Tool Detection to Your CNC Mill”