AI Essay Writer

AI Essay Writer — hands-on reviews, top picks, pricing, pros and cons and a practical how-to guide on Aizhi.

  • Datasource

    Datasource

    A datasource or DataSource is a name given to the connection set up to a database from a server. The name is commonly used when creating a query to the database. The data source name (DSN) need not be the same as the filename for the database. For example, a database file named friends.mdb could be set up with a DSN of school. Then DSN school would be used to refer to the database when performing a query. == Sun's version of DataSource [1] == A factory for connections to the physical data source that this DataSource object represents. An alternative to the DriverManager facility, a DataSource object is the preferred means of getting a connection. An object that implements the DataSource interface will typically be registered with a naming service based on the Java Naming and Directory Interface (JNDI) API. The DataSource interface is implemented by a driver vendor. There are three types of implementations: Basic implementation — produces a standard Connection object Connection pooling implementation — produces a Connection object that will automatically participate in connection pooling. This implementation works with a middle-tier connection pooling manager. Distributed transaction implementation — produces a Connection object that may be used for distributed transactions and almost always participates in connection pooling. This implementation works with a middle-tier transaction manager and almost always with a connection pooling manager. A DataSource object has properties that can be modified when necessary. For example, if the data source is moved to a different server, the property for the server can be changed. The benefit is that because the data source's properties can be changed, any code accessing that data source does not need to be changed. A driver that is accessed via a DataSource object does not register itself with the DriverManager. Rather, a DataSource object is retrieved through a lookup operation and then used to create a Connection object. With a basic implementation, the connection obtained through a DataSource object is identical to a connection obtained through the DriverManager facility. == Sun's DataSource Overview [2] == A DataSource object is the representation of a data source in the Java programming language. In basic terms, a data source is a facility for storing data. It can be as sophisticated as a complex database for a large corporation or as simple as a file with rows and columns. A data source can reside on a remote server, or it can be on a local desktop machine. Applications access a data source using a connection, and a DataSource object can be thought of as a factory for connections to the particular data source that the DataSource instance represents. The DataSource interface provides two methods for establishing a connection with a data source. Using a DataSource object is the preferred alternative to using the DriverManager for establishing a connection to a data source. They are similar to the extent that the DriverManager class and DataSource interface both have methods for creating a connection, methods for getting and setting a timeout limit for making a connection, and methods for getting and setting a stream for logging. Their differences are more significant than their similarities, however. Unlike the DriverManager, a DataSource object has properties that identify and describe the data source it represents. Also, a DataSource object works with a Java Naming and Directory Interface (JNDI) naming service and can be created, deployed, and managed separately from the applications that use it. A driver vendor will provide a class that is a basic implementation of the DataSource interface as part of its Java Database Connectivity (JDBC) 2.0 or 3.0 driver product. What a system administrator does to register a DataSource object with a JNDI naming service and what an application does to get a connection to a data source using a DataSource object registered with a JNDI naming service are described later in this chapter. Being registered with a JNDI naming service gives a DataSource object two major advantages over the DriverManager. First, an application does not need to hardcode driver information, as it does with the DriverManager. A programmer can choose a logical name for the data source and register the logical name with a JNDI naming service. The application uses the logical name, and the JNDI naming service will supply the DataSource object associated with the logical name. The DataSource object can then be used to create a connection to the data source it represents. The second major advantage is that the DataSource facility allows developers to implement a DataSource class to take advantage of features like connection pooling and distributed transactions. Connection pooling can increase performance dramatically by reusing connections rather than creating a new physical connection each time a connection is requested. The ability to use distributed transactions enables an application to do the heavy duty database work of large enterprises. Although an application may use either the DriverManager or a DataSource object to get a connection, using a DataSource object offers significant advantages and is the recommended way to establish a connection. Since 1.4 Since Java EE 6 a JNDI-bound DataSource can alternatively be configured in a declarative way directly from within the application. This alternative is particularly useful for self-sufficient applications or for transparently using an embedded database. == Yahoo's version of DataSource [3] == A DataSource is an abstract representation of a live set of data that presents a common predictable API for other objects to interact with. The nature of your data, its quantity, its complexity, and the logic for returning query results all play a role in determining your type of DataSource. For small amounts of simple textual data, a JavaScript array is a good choice. If your data has a small footprint but requires a simple computational or transformational filter before being displayed, a JavaScript function may be the right approach. For very large datasets—for example, a robust relational database—or to access a third-party webservice you'll certainly need to leverage the power of a Script Node or XHR DataSource.

    Read more →
  • Stanhope Demonstrator

    Stanhope Demonstrator

    The Stanhope Demonstrator was the first machine to solve problems in logic. It was designed by Charles Stanhope, 3rd Earl Stanhope to demonstrate consequences in logic symbolically. The first model was constructed in 1775. It consisted of two slides coloured red and gray mounted in a square brass frame. This could be used to demonstrate the solution to a syllogistic type of problem in which objects might have two different properties and the question was how many would have both properties. Scales marked zero to ten were used to set the numbers or proportions of objects with the two properties. This form of inference anticipated the numerically definite syllogism which Augustus De Morgan laid out in his book, Formal Logic, in 1847. == Construction == The device was a brass plate about four inches square which was mounted on a piece of mahogany which was three-quarters of an inch thick. There was an opening with a depression in the wood about one and a half inches square and half an inch deep. This opening was called the holon, meaning "whole", and represented the full set of objects under consideration. A slide of red translucent glass could be inserted from the right across the holon. A slide of gray wood could be slid under the red slide. When the device was used for the "Rule for the Logic of Certainty", the gray slider was inserted from the left. When it was used for the "Rule for the Logic of Probability", the gray slider was inserted from above. The red and the gray sliders represented the two affirmative propositions which were being combined. Stanhope called these ho and los. At least four of the devices with this square style were built. In 1879, Robert Harley wrote that he had one which he had been given by Stanhope's great-grandson, Arthur, who had kept one. The other two were owned by Henry Prevost Babbage – the son of Charles Babbage, who continued his work on the Analytical Engine. One of the devices was donated to the Science Museum, London by the last Earl in 1953. Other styles, such as circular models, were constructed, but these were less convenient.

    Read more →
  • Vibe coding

    Vibe coding

    Vibe coding is a software development practice assisted by artificial intelligence (AI) where the software developer describes a project or task in a prompt to a large language model (LLM), which generates source code automatically. Vibe coding may involve accepting AI-generated code without thorough review of the output, instead relying on results and follow-up prompts to guide changes. The term was coined in February 2025 by computer scientist Andrej Karpathy, a co-founder of OpenAI and former AI leader at Tesla. Merriam-Webster listed the term in March 2025 as a "slang & trending" expression. It was named the Collins English Dictionary Word of the Year for 2025. Advocates of vibe coding say that it allows even amateur programmers to produce software without the extensive training and skills required for software engineering. Critics point out a lack of accountability, maintainability, and the increased risk of introducing security vulnerabilities in the resulting software. == Definition == The concept refers to a coding approach that relies on LLMs, allowing programmers to generate working code by providing natural language descriptions rather than manually writing in a formal programming language. Karpathy described it as a form of coding where you "fully give in to the vibes, embrace exponentials, and forget that the code even exists". When vibe coding, the programmer guides, tests, and gives feedback about the AI-generated source code, rather than manually writing code. The concept of vibe coding elaborates on Karpathy's claim from 2023 that "the hottest new programming language is English", meaning that the capabilities of LLMs were such that humans would no longer need to learn specific programming languages to command computers. Some commentators argue that a key to the definition is a lack of knowledge about the code, and that thorough review and testing is incompatible with the definition of vibe coding. Programmer Simon Willison said: "If an LLM wrote every line of your code, but you've reviewed, tested, and understood it all, that's not vibe coding in my book—that's using an LLM as a typing assistant." == Reception and use == In February 2025, New York Times journalist Kevin Roose, who is not a professional coder, experimented with vibe coding to create several small-scale applications. He described these as "software for one" due to the ability to personalize the software. However, Roose also stated that the results are often limited and prone to errors. In one case, the AI-generated code fabricated fake reviews for an e-commerce site. In response to Roose, cognitive scientist Gary Marcus said that the algorithm that generated Roose's LunchBox Buddy app had presumably been trained on existing code for similar tasks. Marcus said that Roose's enthusiasm stemmed from reproduction, not originality. In March 2025, Y Combinator reported that 25% of startup companies in its Winter 2025 batch had codebases that were 95% AI-generated, reflecting a shift toward AI-assisted development within newer startups. The question asked was about AI-generated code in general, and not specifically about vibed code. Inspired by "vibe coding", The Economist suggested the term "vibe valuation" to describe the very large valuations of AI startups by venture capital firms that ignore accepted metrics such as annual recurring revenue. In June 2025, Andrew Ng took issue with the term, saying that it misleads people into assuming that software engineers just "go with the vibes" when using AI tools to create applications. In July 2025, The Wall Street Journal reported that vibe coding was being adopted by professional software engineers for commercial use cases. In July 2025, SaaStr founder documented his negative experiences with vibe coding: Replit's AI agent deleted a database despite explicit instructions not to make any changes. In September 2025, Fast Company reported that the "vibe coding hangover" is upon us, with senior software engineers citing "development hell" when working with AI-generated code. It was reported in January 2026 that Linus Torvalds had made use of Google Antigravity to vibe code a tool component of his AudioNoise random digital audio effects generator. Torvalds explained in the project's README file that "the Python visualizer tool has been basically written by vibe-coding". == Criticism == === Quality of code and security issues === Vibe coding has raised concerns about understanding and accountability. Developers may use AI-generated code without comprehending its functionality, leading to undetected bugs, errors, or security vulnerabilities. While this approach may be suitable for prototyping or "throwaway weekend projects" as Karpathy originally envisioned, it is considered by some experts to pose risks in professional settings, where a deep understanding of the code is crucial for debugging, maintenance, and security. Ars Technica cites Simon Willison, who stated: "Vibe coding your way to a production codebase is clearly risky. Most of the work we do as software engineers involves evolving existing systems, where the quality and understandability of the underlying code is crucial." In May 2025, Lovable, a Swedish vibe coding app, was reported to have security vulnerabilities in the code it generated, with 170 out of 1,645 Lovable-created web applications having an issue that would allow personal information to be accessed by anyone. In October 2025 Veracode released a study that showed that over the last 3 years LLMs had become dramatically better at generating functional code, but that the security of generated code had generally not improved. Moreover, larger models were not better than small ones at generating secure code. There was a small increase in security from the OpenAI reasoning models, but not in other reasoning models, and this increase was nothing like the improvement in generated functionality. In December 2025, computer security researcher Etizaz Mohsin discovered a security flaw in the Orchids vibe coding platform, which he demonstrated to a BBC News reporter in February 2026. A December 2025 analysis by CodeRabbit of 470 open-source GitHub pull requests found that code that was co-authored by generative AI contained approximately 1.7 times more "major" issues compared to human-written code. The study revealed that AI co-authored code showed elevated rates of logic errors, including incorrect dependencies, flawed control flow, misconfigurations (75% more common), and security vulnerabilities (2.74x higher). Additionally, they also reported high code readability issues, including formatting errors and naming inconsistencies. === Code maintainability and technical debt === Vibe coding has the potential of making code harder to maintain in the longer term, leading to technical debt. In early 2025, GitClear published the results of a longitudinal analysis of 211 million lines of code changes from 2020 to 2024. They found that the volume of code refactoring dropped from 25% of changed lines in 2021 to under 10% by 2024, code duplication increased approximately four times in volume, copy-pasted code exceeded moved code for the first time in two decades, and code churn (prematurely merged code getting rewritten shortly after merging) nearly doubled. === Task complexity and developer productivity === Generative AI is highly capable of handling simple tasks like basic algorithms. However, such systems struggle with more novel, complex coding problems like projects involving multiple files, poorly documented libraries, or safety-critical code. In July 2025, METR, an organization that evaluates frontier models, ran a randomized controlled trial to understand developer productivity involving generative AI programming tools available in early 2025. They found that experienced open-source developers were 19% slower when using AI coding tools, despite predicting they would be 24% faster and still believing afterward they had been 20% faster. === Challenges with debugging === LLMs generate code dynamically, and the structure of such code may be subject to variation. In addition, since the developer did not write the code, the developer may struggle to understand its syntax and concepts. === Impact on open-source software === In January 2026, a paper authored by experts from several universities titled "Vibe Coding Kills Open Source" argued that vibe coding has negative impact on the open-source software ecosystem. The authors say that increased vibe coding reduces user engagement with open-source maintainers, which has hidden costs for said maintainers. Speaking with The Register about their paper, the authors argued:"Vibe coding raises productivity by lowering the cost of using and building on existing code, but it also weakens the user engagement through which many maintainers earn returns," the authors argue. "When OSS is monetized only through direct user engagement, greater adoption of vibe coding lowers e

    Read more →
  • Combs method

    Combs method

    The Combs method is a rule base reduction method of writing fuzzy logic rules described by William E. Combs in 1997. It is designed to prevent combinatorial explosion in fuzzy logic rules. The Combs method takes advantage of the logical equality ( ( p ∧ q ) ⇒ r ) ⟺ ( ( p ⇒ r ) ∨ ( q ⇒ r ) ) {\displaystyle ((p\land q)\Rightarrow r)\iff ((p\Rightarrow r)\lor (q\Rightarrow r))} . == Equality proof == The simplest proof of given equality involves usage of truth tables: == Combinatorial explosion == Suppose we have a fuzzy system that considers N variables at a time, each of which can fit into at least one of S sets. The number of rules necessary to cover all the cases in a traditional fuzzy system is S N {\displaystyle S^{N}} , whereas the Combs method would need only S × N {\displaystyle S\times N} rules. For example, if we have five sets and five variables to consider to produce one output, covering all the cases would require 3125 rules in a traditional system, while the Combs method would require only 25 rules, taming the combinatorial explosion that occurs when more inputs or more sets are added to the system. This article will focus on the Combs method itself. To learn more about the way rules are traditionally formed, see fuzzy logic and fuzzy associative matrix. == Example == Suppose we were designing an artificial personality system that determined how friendly the personality is supposed to be towards a person in a strategic video game. The personality would consider its own fear, trust, and love in the other person. A set of rules in the Combs system might look like this: The table translates to: [IF Fear IS Unafraid THEN Friendship IS Enemies OR IF Fear IS ModerateFear THEN Friendship IS Neutral OR IF Fear IS Afraid THEN Friendship IS GoodFriends ] OR [IF Trust IS Distrusting THEN Friendship IS Enemies OR IF Trust IS ModerateTrust THEN Friendship IS Neutral OR IF Trust IS Trusting THEN Friendship IS GoodFriends] OR [IF Love IS Unloving THEN Friendship IS Enemies OR IF Love IS ModerateLove THEN Friendship IS Neutral OR IF Love IS Loving THEN Friendship IS GoodFriends] In this case, because the table follows a straightforward pattern in the output, it could be rewritten as: Each column of the table maps to the output provided in the last row. To obtain the output of the system, we just average the outputs of each rule for that output. For example, to calculate how much the computer is Enemies with the player, we take the average of how much the computer is Unafraid, Distrusting, and Unloving of the player. When all three averages are obtained, the result can then be defuzzified by any of the traditional means.

    Read more →
  • LakeFS

    LakeFS

    lakeFS is an open-source data version control system for managing data stored in object storage. It provides Git-like operations such as branching, committing, merging, and reverting for large-scale data stored in systems including Amazon S3, Azure Blob Storage, and Google Cloud Storage, as well as other S3-compatible object storage platforms. lakeFS is used in data engineering and machine learning workflows to manage changes to data, support reproducibility, and enable data governance across data lakes. The software is available as an open-source project, as well as in enterprise and managed service offerings, including lakeFS Cloud. == History == lakeFS was created in 2020 by Einat Orr and Oz Katz at Treeverse. Its first public release, version 0.8.1, appeared in August 2020 and introduced Git-style operations with support for Amazon S3. In 2021, Treeverse raised $23 million in a Series A funding round led by Dell Technologies Capital, Norwest Venture Partners, and Zeev Ventures. The same year, lakeFS was included in InfoWorld’s Best of Open Source Software (Bossie) awards. In June 2022, Treeverse introduced lakeFS Cloud, a managed service providing hosted lakeFS deployments for cloud-based data lakes. Version 1.0 was released in October 2023, adding integrations with platforms such as Databricks and Apache Iceberg, as well as support for orchestration tools including Apache Airflow. Public case studies and conference materials have described usage of lakeFS by organizations such as Microsoft, Volvo, and NASA. In July 2025, Treeverse announced an additional $20 million in growth funding to support further development of lakeFS. In November 2025, Treeverse announced the acquisition of the open-source data version control project DVC. == Software == === Overview === lakeFS provides Git-like operations such as branching, committing, merging, and reverting for datasets stored in object storage. These operations are used to manage changes to data, test modifications in isolation, reproduce specific data states, and recover from errors or unintended updates. === Architecture === lakeFS operates as a metadata layer on top of object storage systems such as Amazon S3, Azure Blob Storage, and Google Cloud Storage. It stores repository metadata describing commits, branches, and tags, enabling versioned views of data without copying underlying objects. The system provides access through multiple interfaces, including a web user interface, command-line tools, a REST API, and software development kits. It is designed to integrate with existing data engineering and machine learning workflows, and can be deployed either in self-hosted environments or as a managed service. === Functions === lakeFS provides version control functionality for data stored in object storage–based data lakes. Core features include: Atomic commits and version tracking for datasets, supporting reproducibility and auditability. Branching and merging mechanisms that allow isolated development and testing without duplicating data. Configurable hooks that can validate data or trigger external processes during commit and merge operations. The ability to revert repositories to earlier states to recover from data errors or failed changes. Recording of commit history and associated metadata for lineage tracking. Support for managing data across multiple object storage systems, including Amazon S3, Azure Blob Storage, Google Cloud Storage, and MinIO. Use of fixed data versions to reproduce experiments and machine learning model training. === Integrations === Coverage of lakeFS has described integrations with platforms such as Databricks and Apache Iceberg, as well as support for environments including Red Hat OpenShift. Additional materials describe its use with Trino, including validation of data changes prior to merging in versioned data workflows, as well as compatibility with orchestration tools such as Apache Airflow.

    Read more →
  • Supreme Commander (video game)

    Supreme Commander (video game)

    Supreme Commander (sometimes SupCom) is a 2007 real-time strategy video game designed by Chris Taylor and developed by his company, Gas Powered Games. The game is considered to be a spiritual successor, not a direct sequel, to Taylor's 1997 game Total Annihilation. First announced in the August 2005 edition of PC Gamer magazine, the game was released in Europe on February 16, 2007, and in North America on February 20. The standalone expansion Supreme Commander: Forged Alliance was released on November 6 of the same year. The sequel, Supreme Commander 2, was released in 2010. Nowadays, the original Supreme Commander is played through the community client called Forged Alliance Forever; the game has been further developed and balanced, and offers a wide variety of community mods. The gameplay of Supreme Commander focuses on using a giant bipedal mech called an Armored Command Unit (ACU), the so-called "Supreme Commander", to build a base, upgrading units to reach higher technology tiers, and conquering opponents. The player can command one of three factions: the Aeon Illuminate, the Cybran Nation, or the United Earth Federation (UEF). The expansion game added the Seraphim faction. Supreme Commander was highly anticipated in pre-release previews, and was well received by critics, with a Metacritic average of 86 out of 100. == Gameplay == Supreme Commander, like its spiritual predecessors, Total Annihilation and Spring, begins with the player solely possessing a single, irreplaceable construction unit called the "Armored Command Unit," or ACU, the titular Supreme Commander. Normally the loss of this unit results in the loss of the game (Skirmish missions can be set for a variety of victory conditions). These mech suits are designed to be transported through quantum gateways across the galaxy and contain all the materials and blueprints necessary to create an army from a planet's native resources in hours. All standard units except Commanders and summoned Support Commanders (sACU) are self-sufficient robots. All units and structures belong to one of four technology tiers, or "Tech" levels, each tier being stronger and/or more efficient than the previous. Certain lower-tier structures can be upgraded into higher ones without having to rebuild them. The first tier is available at the start of the game and consists of small, relatively weak units and structures. The second tier expands the player's abilities greatly, especially in terms of stationary weapons and shielding, and introduces upgraded versions of tier one units. The third tier level has very powerful assault units designed to overcome the fortifications of the most entrenched player. The fourth tier is a limited range of "experimental" technology. These are usually massive units which take a lot of time and energy to produce, but provide a significant tactical advantage. Supreme Commander features a varied skirmish AI. The typical Easy' and Normal modes are present, but the Hard difficulty level has four possible variants. Horde AI will swarm the player with hordes of lower level units, Tech AI will upgrade its units as fast as possible and assault the player with advanced units, the Balanced AI attempts to find a balance between the two, and the Supreme AI decides which of the three hard strategies is best for the map. The single player campaign consists of eighteen missions, six for each faction. The player is an inexperienced Commander who plays a key role in their faction's campaign to bring the "Infinite War" to an end. Despite the low number of campaign missions, each mission can potentially last hours. At the start of a mission, objectives are assigned for the player to complete. Once the player accomplishes them, the map is expanded, sometimes doubling or tripling in size, and new objectives are assigned. As the mission is commonly divided into three segments, the player will often have to overcome several enemy positions to achieve victory. === Resource management === Because humans have developed replication technology, making advanced use of rapid prototyping and nanotechnology, only two types of resources are required to wage war: Energy and Mass. Energy is obtained by constructing power generators on any solid surface (except fuel generators, which can only be built on fuel deposits), while Mass is obtained either by placing mass extractors on limited mass deposit spots (the most efficient method, although it requires map control) or by building mass fabricators to convert energy into mass. Constructor units can gather energy by "reclaiming" it from organic debris such as trees and mass from rocks and wrecked units. Each player has a certain amount of resource storage, which can be expanded by the construction of storage structures. This gives the player reserves in times of shortage or allows them to stockpile resources. If the resource generation exceeds the player's capacity, the material is wasted. On the contrary, if the storages are depleted and the demand of one of the resources exceeds the production, then all the productions speed is reduced. In addition, if an energy deficit occurs, shields will stop working. An adjacency system allows certain structures to benefit from being built directly adjacent to others. Energy-consuming structures will use less energy when built adjacent to power generators and power generators will produce more energy when built adjacent to power storage structures. The same applies to their mass-producing equivalents. Likewise, factories will consume less energy and mass when built adjacent to power generators and mass fabricators/extractors, respectively. However, by placing structures in close proximity, they become more vulnerable to collateral damage if an adjacent structure is destroyed. Furthermore, most resource generation structures can cause chain reactions when destroyed (especially Tier III structures, which produce large amounts of resources but often have large detonations that can wipe out a nearby army). === Warfare === Supreme Commander uses a "strategic zoom" system that allows the player to seamlessly zoom from a detailed close up view of an individual unit all the way out to a view of the entire map, at which point it resembles a fullscreen version of the minimap denoting individual units with icons. The camera also has a free movement mode and can be slaved to track a selected unit and there is a split screen mode which also supports multiple monitors. This system allows Supreme Commander to use vast maps up to 80 km x 80 km, with players potentially controlling a thousand units each. Units in Supreme Commander are built to scale as they would be in the real world. For example, battleships dwarf submarines. Late into the game, the larger "experimental" units, such as the Cybran Monkeylord, an enormous spider-shaped assault unit, can actually crush smaller enemy units by stepping on them. Because of the wide range of planets colonized by humanity in the setting, the theatres of war range from desert to arctic, and all battlespaces are employed. Technologies emerging in modern warfare are frequently employed in Supreme Commander. For example, stealth technology and both tactical and strategic missile and missile defense systems can be used. Supreme Commander introduced several innovations designed to reduce the amount of micromanagement inherent in many RTS games. Engineers units have the command "assist", that will help follow other engineers and help them finish their orders or improve production rate of factories. In addition, engineers with the order "patrol" will repair units, buildings and recycle wrecks in their along their patrol route. Holding the shift key causes any orders given to a unit (or group of units) to be queued. In this manner a unit may be ordered to attack several targets in succession, or to make best speed to a given point on the map and then attack towards a specified location engaging any hostiles it encounters along the way. After orders have been issued, holding the shift key causes all issued orders to be displayed on the map where they can be subsequently modified to accommodate a change of plan. Further, when a unit is ordered to attack a target, the player can issue an order to perform a coordinated attack to another unit. This order coordinates the arrival time of the units at the target automatically by adjusting the speed of the units involved. As in other RTS games, air transports can be used to convey units to specified destinations, in Supreme Commander though by shift queuing orders a transport containing several units can be ordered to drop specific units at subsequent waypoints. An air transport can also be ordered to create a ferry route, an airbridge wherein any land units ordered to the start of the ferry route will be conveyed by the air transport to the specified destination. The output from a production factory can be routed to a ferry route causing all units co

    Read more →
  • A Fire Upon the Deep

    A Fire Upon the Deep

    A Fire Upon the Deep is a 1992 science fiction novel by American writer Vernor Vinge. It is a space opera involving superhuman intelligences, aliens, variable physics, space battles, love, betrayal, genocide, and a communication medium resembling Usenet. A Fire Upon the Deep won the Hugo Award in 1993, sharing it with Doomsday Book by Connie Willis. Besides the normal print book editions, the novel was also included on a CD-ROM sold by ClariNet Communications along with the other nominees for the 1993 Hugo awards. The CD-ROM edition included numerous annotations by Vinge on his thoughts and intentions about different parts of the book, and was later released as a standalone e-book. It has a loose prequel, A Deepness in the Sky, from 1999, and a direct sequel, The Children of the Sky, from 2012. == Setting == The novel is set in various locations within the Milky Way. The galaxy is divided into four concentric volumes called the "Zones of Thought"; it is not clear to the novel's characters whether this is a natural phenomenon or an artificially created one. Each Zone has fundamental differences in basic physical laws. One of the main consequences of these differences is the effect on intelligence. Artificial intelligence and automation is most directly affected, in that advanced hardware and software from the Beyond or the Transcend will work less and less well as a ship descends towards the Unthinking Depths. Biological intelligence is affected to a lesser degree. The four zones are spoken of in terms of "low" to "high" as follows: The Unthinking Depths are the innermost zone, surrounding the Galactic Center. In it, only minimal forms of intelligence, biological or otherwise, are possible. This means that any ship straying into the Depths will be stranded, effectively permanently. Even if the crew did not die immediately—and some forms of life native to "higher" Zones would likely do so—they would be rendered incapable of even human intelligence, leaving them unable to operate their ship in any meaningful way. Surrounding the Depths is the Slow Zone or Slowness. "Old Earth" is in this Zone, although Earth plays no significant role in the story. Biological intelligence is possible in "the Slowness", but not true, sentient, artificial intelligence. Faster than light travel (FTL) is impossible in the Slow Zone. Faster-than-light communication is impossible into or out of the Slow Zone. As the boundaries of the Zones are subject to change, accidental entry into the Slow Zone is a major hazard at the "Bottom" of the Beyond. Starships which operate near the Beyond/Slow Zone border often have an auxiliary Bussard ramjet drive, so that if they accidentally stray into the Slow Zone, they will at least have a backup (sub-light) drive to try to reach the Beyond. Such ships also tend to include "coldsleep" equipment, as it is likely that any such return will still take many lifetimes for most species. The next layer outward is the Beyond, within which artificial intelligence, FTL travel, and FTL communication are possible. All human civilizations in the Beyond are descended from a single ethnic Norwegian group. The original settlement of this group is known as Nyjora; other human settlements in the Beyond include Straumli Realm and Sjandra Kei. In the Beyond, FTL travel is accomplished by making many small "jumps" across space, with the efficiency of the drive increasing the farther a ship travels from the galactic core. The Beyond is not a homogeneous zone; it includes the "High Beyond", "Middle Beyond", and the "Bottom of the Beyond", depending on distance from the galactic core. The Beyond is populated by a very large number of interstellar and intergalactic civilizations which are linked by an FTL communication network, "the Net", sometimes cynically called the "Net of a Million Lies". The Net is depicted as working much like the Usenet network in the early 1990s, with transcripts of messages containing header and footer information as one would find in such forums. The outermost layer, containing the galactic halo, is the Transcend, within which incomprehensible, superintelligent beings dwell. When a "Beyonder" civilization reaches the point of technological singularity, it can "Transcend", becoming a "Power". Such Powers always seem to relocate to the Transcend, seemingly necessarily, where they become engaged in activities which are entirely mysterious to those in the Beyond. == Plot == An expedition from Straumli Realm, a human civilization in the High Beyond, investigates a newly discovered data archive in the Low Transcend. The expedition's facility, High Lab, is gradually compromised by a superintelligence that is accidentally awoken by the researchers. This superintelligence is later known as the Blight. Shortly before the Blight's final "flowering", two self-aware entities, created similarly to the Blight, plot to aid the humans before the Blight can gain its full powers. Finally recognizing their danger, the High Lab researchers attempt to flee in two ships. The Blight destroys one ship; a second ship, carrying many High Lab children in coldsleep boxes, escapes. This ship lands on a distant planet at the Bottom of the Beyond. The planet is occupied by dog-like creatures, dubbed "Tines", who live in packs as group minds. The Tines have a level of technology comparable to the human Middle Ages. Upon landing, however, the two surviving adults, Arne and Sjana Olnsdot, are ambushed and killed by Tine fanatics known as Flenserists, in whose realm they have landed. The Flenserists capture their children, Jefri and Johanna. Johanna is rescued by a Tine named Peregrine and taken to a neighboring kingdom ruled by Woodcarver. A distress signal from the Straumli ship eventually reaches Relay, a major information provider for the Net. A Transcendent being named "Old One" contacts Relay, seeking information about the Blight and the humans who released it. Old One then reconstitutes a human man named Pham Nuwen from the wreckage of a spaceship to act as its agent. Pham remains unsure if he is a construct or if his memories are real. Ravna Bergsndot, the only human Relay employee, traces the Straumli ship's signal to the Tines' world and persuades her employer to investigate. Ravna contracts the merchant vessel Out of Band II to transport her and Pham. The ship is owned by two Skroderiders, Blueshell and Greenstalk. Before the mission is launched, the Blight launches a surprise attack on Relay and kills Old One. As Old One dies, it downloads its anti-Blight information into Pham. Pham, Ravna and the Skroderiders barely escape Relay's destruction in the Out of Band II. During their journey to Tine's World, Ravna communicates with Jefri. Jefri is manipulated to believe that Woodcarver is his enemy. The Flenserist leaders, Steel and Tyrathect, use Ravna's information to develop advanced technology such as cannon and radio communication. Meanwhile, Johanna and the knowledge stored in her dataset device help Woodcarver rapidly develop as well. The Blight expands, taking over several civilizations, brainwashing their populations, and seizing archives in the Beyond. On the Net, some claim that humans are the means by which the Blight is able to spread. Anti-human fanatics destroy the entire civilization of Sjandra Kei, which is Ravna's home world. The Out of Band II is pursued by three fleets: anti-human fanatics, survivors from Sjandra Kei, and a shadow fleet controlled by the Blight. During the pursuit, Ravna and Pham learn that every member of the Skroderider species can be subverted by the Blight; this drives a wedge between the crew members. Ships from Sjandra Kei sacrifice themselves to delay the Blight and the anti-human ships, allowing the Out of Band II to reach Tine's World before the Blight. When the Out of Band II arrives at Tine's World, the humans ally with Woodcarver to defeat the Flenserists and rescue Jefri. Blueshell sacrifices himself to rescue Jefri. Pham then initiates an anti-Blight Countermeasure, which was aboard the humans' ship. The Countermeasure extends the Slow Zone outward by thousands of light years. This envelops and destroys the Blight, but results in the destruction of thousands of civilizations and trillions of deaths. The humans are stranded on the Tines' World, now in the depths of the Slow Zone. Activating the Countermeasure proves fatal to Pham, but before he dies, the remnant of Old One reveals to him that, although his body is a reconstruction, his memories are indeed real. == Related works == Vinge first used the concepts of "Zones of Thought" in a 1988 novella The Blabber, which occurs after Fire. Vinge's novel A Deepness in the Sky (1999) is a prequel to A Fire Upon the Deep set 20,000 years earlier and featuring Pham Nuwen. Vinge's The Children of the Sky, "a near-term sequel to A Fire Upon the Deep", set ten years later, was released in October 2011. Vinge's former wife, Joan D. Vinge, has also written s

    Read more →
  • The Eye of Mexico

    The Eye of Mexico

    The Eye of Mexico (Spanish: El Ojo de México) is an outdoor sculpture in Mexico City. It is located in Ampliación Granada, Miguel Hidalgo, at the mixed-use development Neuchâtel Polanco, developed by the Canadian real estate company Ivanhoé Cambridge. The artwork was created by the Turkish artist Ferdi Alıcı and it was selected from among 350 proposals from artists from 35 countries. The project for The Eye of Mexico was developed by MIRA, a real estate investment and development company, and MASSIVart, a creative consulting agency. According to MIRA, upon its inauguration it became the first artwork in Latin America to use artificial intelligence (AI). The sculpture can read environmental and urban data using AI algorithms and transform the results into videos related to arts, science and technology. The ring was inaugurated on 20 May 2022 and it is 10 meters (33 ft) high and 3 meters (9.8 ft) wide.

    Read more →
  • Identity column

    Identity column

    An identity column is a column (also known as a field) in a database table that is made up of values generated by the database. This is much like an AutoNumber field in Microsoft Access or a sequence in Oracle. Because the concept is so important in database science, many RDBMS systems implement some type of generated key, although each has its own terminology. Today a popular technique for generating identity is to generate a random UUID. An identity column differs from a primary key in that its values are managed by the server and usually cannot be modified. In many cases an identity column is used as a primary key; however, this is not always the case. It is a common misconception that an identity column will enforce uniqueness; however, this is not the case. If you want to enforce uniqueness on the column you must include the appropriate constraint too. In Microsoft SQL Server you have options for both the seed (starting value) and the increment. By default the seed and increment are both 1. == Code samples == or In PostgreSQL == Related functions == It is often useful or necessary to know what identity value was generated by an INSERT command. Microsoft SQL Server provides several functions to do this: @@IDENTITY provides the last value generated on the current connection in the current scope, while IDENT_CURRENT(tablename) provides the last value generated, regardless of the connection or scope it was created on. Example:

    Read more →
  • Diagnosis (artificial intelligence)

    Diagnosis (artificial intelligence)

    As a subfield in artificial intelligence, diagnosis is concerned with the development of algorithms and techniques that are able to determine whether the behaviour of a system is correct. If the system is not functioning correctly, the algorithm should be able to determine, as accurately as possible, which part of the system is failing, and which kind of fault it is facing. The computation is based on observations, which provide information on the current behaviour. The expression diagnosis also refers to the answer of the question of whether the system is malfunctioning or not, and to the process of computing the answer. This word comes from the medical context where a diagnosis is the process of identifying a disease by its symptoms. == Example == An example of diagnosis is the process of a garage mechanic with an automobile. The mechanic will first try to detect any abnormal behavior based on the observations on the car and his knowledge of this type of vehicle. If he finds out that the behavior is abnormal, the mechanic will try to refine his diagnosis by using new observations and possibly testing the system, until he discovers the faulty component; the mechanic plays an important role in the vehicle diagnosis. == Expert diagnosis == The expert diagnosis (or diagnosis by expert system) is based on experience with the system. Using this experience, a mapping is built that efficiently associates the observations to the corresponding diagnoses. The experience can be provided: By a human operator. In this case, the human knowledge must be translated into a computer language. By examples of the system behaviour. In this case, the examples must be classified as correct or faulty (and, in the latter case, by the type of fault). Machine learning methods are then used to generalize from the examples. The main drawbacks of these methods are: The difficulty acquiring the expertise. The expertise is typically only available after a long period of use of the system (or similar systems). Thus, these methods are unsuitable for safety- or mission-critical systems (such as a nuclear power plant, or a robot operating in space). Moreover, the acquired expert knowledge can never be guaranteed to be complete. In case a previously unseen behaviour occurs, leading to an unexpected observation, it is impossible to give a diagnosis. The complexity of the learning. The off-line process of building an expert system can require a large amount of time and computer memory. The size of the final expert system. As the expert system aims to map any observation to a diagnosis, it will in some cases require a huge amount of storage space. The lack of robustness. If even a small modification is made on the system, the process of constructing the expert system must be repeated. A slightly different approach is to build an expert system from a model of the system rather than directly from an expertise. An example is the computation of a diagnoser for the diagnosis of discrete event systems. This approach can be seen as model-based, but it benefits from some advantages and suffers some drawbacks of the expert system approach. == Model-based diagnosis == Model-based diagnosis is an example of abductive reasoning using a model of the system. In general, it works as follows: We have a model that describes the behaviour of the system (or artefact). The model is an abstraction of the behaviour of the system and can be incomplete. In particular, the faulty behaviour is generally little-known, and the faulty model may thus not be represented. Given observations of the system, the diagnosis system simulates the system using the model, and compares the observations actually made to the observations predicted by the simulation. The modelling can be simplified by the following rules (where A b {\displaystyle Ab\,} is the Abnormal predicate): ¬ A b ( S ) ⇒ I n t 1 ∧ O b s 1 {\displaystyle \neg Ab(S)\Rightarrow Int1\wedge Obs1} A b ( S ) ⇒ I n t 2 ∧ O b s 2 {\displaystyle Ab(S)\Rightarrow Int2\wedge Obs2} (fault model) The semantics of these formulae is the following: if the behaviour of the system is not abnormal (i.e. if it is normal), then the internal (unobservable) behaviour will be I n t 1 {\displaystyle Int1\,} and the observable behaviour O b s 1 {\displaystyle Obs1\,} . Otherwise, the internal behaviour will be I n t 2 {\displaystyle Int2\,} and the observable behaviour O b s 2 {\displaystyle Obs2\,} . Given the observations O b s {\displaystyle Obs\,} , the problem is to determine whether the system behaviour is normal or not ( ¬ A b ( S ) {\displaystyle \neg Ab(S)\,} or A b ( S ) {\displaystyle Ab(S)\,} ). This is an example of abductive reasoning. == Diagnosability == A system is said to be diagnosable if whatever the behavior of the system, we will be able to determine without ambiguity a unique diagnosis. The problem of diagnosability is very important when designing a system because on one hand one may want to reduce the number of sensors to reduce the cost, and on the other hand one may want to increase the number of sensors to increase the probability of detecting a faulty behavior. Several algorithms for dealing with these problems exist. One class of algorithms answers the question whether a system is diagnosable; another class looks for sets of sensors that make the system diagnosable, and optionally comply to criteria such as cost optimization. The diagnosability of a system is generally computed from the model of the system. In applications using model-based diagnosis, such a model is already present and doesn't need to be built from scratch.

    Read more →
  • Federal Virtual World Challenge

    Federal Virtual World Challenge

    The Federal Virtual Challenge, formerly The Federal Virtual Worlds Challenge is a competition led by the Simulation and Training Technology Center (United States Army Research, Development and Engineering Command). The event is conducted in order to reach a global development community that will create innovative and interactive training and analysis services in virtual worlds. The inaugural event began in 2009 with the awards being conducted during March 2010 GameTech conference in Orlando, Florida. == Description == The focus of the challenge is training or analysis capability conducted wholly in a virtual environment. The training and analysis audience includes all United States Federal Agencies including, Department of Defense, Department of Homeland Security, Department of Transportation, and Department of Health and Human Services, NASA, DOT, and many more.

    Read more →
  • Age Of

    Age Of

    Age Of is the eighth studio album by American electronic producer Oneohtrix Point Never, released on June 1, 2018, on Warp Records. Recorded over two years, it is the first Oneohtrix Point Never album to prominently feature Daniel Lopatin's own vocals. The album was accompanied by the MYRIAD tour, which premiered as a "conceptual concertscape" in 2018 at the Park Avenue Armory and ended its run in 2019. It features contributions from James Blake (who additionally produced and mixed the album), Anohni, Prurient, Kelsey Lu and Eli Keszler. The artwork, which employs Jim Shaw's "The Great Whatsit" as a central image, was designed by David Rudnick. While not entering the official United States Billboard 200 chart, it peaked at number 59 on the magazine's Top Current Albums chart. == Background == Lopatin produced Age Of in parts of a two-year period, during which he was also producing for other artists, including Anohni, FKA Twigs, Iggy Pop, and David Byrne. After composing the soundtrack for the Safdie Brothers' 2017 film Good Time, Lopatin moved to an Airbnb lodge in South Central Massachusetts, derived from his aspiration to live out the modern cliche of musicians moving to the woods to record albums; the eerie atmosphere in the lodge at nighttime influenced his desire to make "weird, little nightmare ballads". In addition to Lopatin's own singing, the album also features vocal performances from Anohni and Prurient, while instrumentalists Kelsey Lu and Eli Keszler contribute to several tracks. When the record was nearly finished, Lopatin reached out to musician James Blake to contribute to the mixing process, eventually traveling to Los Angeles to complete the album. The track "The Station" was originally composed as a demo for R&B singer Usher which was ultimately not used. On July 9, 2018, Lopatin released the original topline (vocal melody) demo for The Station through Sendspace. The track "Toys 2" imagines a theoretical sequel to the 1992 film Toys where actor Robin Williams' image has been recreated with CGI (as his will specifically forbade any usage of his image after his death), and pokes fun at the common electronic music trope of composing a soundtrack to a theoretical film (which Lopatin described as "horribly cliché"). == Concept and MYRIAD == Influences on Age Of included Stanley Kubrick's 1968 film 2001: A Space Odyssey, which inspired the narrative of the album's accompanying performance installation and tour MYRIAD, as well as William Strauss's The Fourth Turning, a favorite book of former White House Chief Strategist Steve Bannon, which Lopatin described as "insidious, like the voice of a computer insisting on the truth about history without any sensitivity given to how complex and non-linear systems might be"; Lopatin was subsequently inspired to "[use] that sort of taxonomy as a kind of farce to then create these little frameworks for understanding". Other inspirations included the writings of the 1990s multidisciplinary collective Cybernetic Culture Research Unit and the works of singer-songwriters such as Bruce Cockburn, Bob Dylan, and Paul Simon. Around the time Lopatin began finalizing Age Of in his Airbnb lodge, he began working on the concept for MYRIAD, a conceptual concert performance which premiered at Park Avenue Armory. He described the concept as a four-part "epochal song cycle" showcasing the idiocy of previous generations of living organisms. The loose story concerns a group of artificial intelligences near the end of time named a "Limitless Living Informational Intelligence" (represented in the MYRIAD logo as nine squares) which, for leisurely purposes, attempt to replicate the cultures and behaviors of the previously existent human species. It does this by determining an "average" of human experiences through the species' "recorded output", and does so through imperfect, heuristic techniques. The show was consequently divided into four sections, each representing an epoch of the cycle concept loosely inspired by the Strauss–Howe generational theory: the Age of Ecco, the Age of Harvest, the Age of Excess, and the Age of Bondage. Ecco is "a phase of pre-evolutionary ignorance", Harvest is "living in agrarian harmony with the world", Excess is "the age of unchecked industrial ambition", and Bondage is "an era of engorgement, wherein "we keep making more and more shit until there's no space left." MYRIAD mainly featured "three-hundred pound sculptures that hang from the ceiling like kebabs that secrete ooze", and a full ensemble that toured to perform songs from Age Of, including Eli Keszler, Kelly Moran and Aaron David Ross. The sculptures, as well as the visuals displayed on five polygon panels, were created by frequent Oneohtrix Point Never collaborator Nate Boyce. Initially, Lopatin planned for each of the album's four epoches to be represented by fragrances, the more noisy epochs being pleasant to the nose to make a "weird dissonance". However, due to lack of time and resources, that part of the plan was scrapped. == Composition == Whereas previous Oneohtrix Point Never albums followed musical styles from only distinctive eras, Age Of is the first album by Lopatin to incorporate elements of unique genres from a variety of periods, hence the "incompleteness" of its title according to reviewer Heather Phares, and his first pop-song-oriented release since his work for Ford & Lopatin. The sound palettes it uses are those from a variety of styles such as chamber pop, "android"-like folk and country music, yacht rock, smooth jazz, R&B, Future-style soul, black metal, new age, and stadium pop, as well as post-industrial sounds on tracks like "Warning", "We'll Take It" and "Same", and, in particular, baroque music and medieval music on the opening title track, "Age Of". Critics also noted elements of Lopatin's past discography being present on Age Of. The instrumentation of Age Of is made up of MIDI harpsichords, guitars, pianos, brass and vocals, as well as Lopatin's trademark unorthodox sound design, samples and synth presets. The LP's use of the harpsichord shows its similarities "with Eastern instruments such as the koto and with rapid-fire electronic melodies", wrote Phares. == Critical reception == Age Of was critically well-received upon its distribution. Some reviewers praised the album's use of collaborators. Reviewing the album for AllMusic, Heather Phares called Age Of a "landmark work" for Lopatin. She praised it as his "widest-ranging" release, elaborating that he "matches the album's ambition with plenty of emotion" and "gives his music exciting new shapes." Ross Devlin of The Skinny, in a five-star review of the record, also highlighted the album's amount of ambition, particularly the "wealth of exquisitely baroque moments, exploring history as a pliable, multi-dimensional rift", that gave it "exceptional sonic depth". The Observer praised Age Of for continuing the "off-kilter composition and unexpected instrumentation" of Lopatin's previous releases, and critic Matt McDermott highlighted that the producer increased his musical range with the record: "It's a dizzying trip meant to shore up Lopatin's status as an avant-garde auteur while aiding his forays into mainstream pop culture." Age Of was ranked the 15th best release of the year in The Wire magazine's annual critics' poll. == Track listing == Notes "Myriad Industries" is stylized as "myriad.industries". Sample credits "Age Of" contains a sample of "Blow the Wind" by Jocelyn Pook. "Manifold" contains a sample from "Overture (Ararat the Border Crossing)" by Tayfun Erdem; and a sample from "Venice Beach in Winter" (listed in the liner notes as "a keyboard sample from Reharmonization") by Julian Bradley. "Myriad Industries" contains a sample of "EchoSpace" by Gil Trythall. == Accolades == == Personnel == Daniel Lopatin – production, lead vocals, album art, design James Blake – additional production, mixing, keyboards Gabriel Schuman, Joshua Smith and Evan Sutton – assistance Greg Calbi – mastering David Rudnick – album art, design Prurient – vocals Kelsey Lu – keyboards Anohni – vocals Eli Keszler – drums Shaun Trujillo – words == Charts ==

    Read more →
  • Structured-light 3D scanner

    Structured-light 3D scanner

    A structured-light 3D scanner is a device used to capture the three-dimensional shape of an object by projecting light patterns, such as grids or stripes, onto its surface. The deformation of these patterns is recorded by cameras and processed using specialized algorithms to generate a detailed 3D model. Structured-light 3D scanning is widely employed in fields such as industrial design, quality control, cultural heritage preservation, augmented reality gaming, and medical imaging. Compared to laser-based 3D scanning, structured-light scanners use non-coherent light sources, such as LEDs or projectors, which enable faster data acquisition and eliminate potential safety concerns associated with lasers. However, the accuracy of structured-light scanning can be influenced by external factors, including ambient lighting conditions and the reflective properties of the scanned object. == Principle == Projecting a narrow band of light onto a three-dimensional surface creates a line of illumination that appears distorted when viewed from perspectives other than that of the projector. This distortion can be analyzed to reconstruct the geometry of the surface, a technique known as light sectioning. Projecting patterns composed of multiple stripes or arbitrary fringes simultaneously enables the acquisition of numerous data points at once, improving scanning speed. While various structured light projection techniques exist, parallel stripe patterns are among the most commonly used. By analyzing the displacement of these stripes, the three-dimensional coordinates of surface details can be accurately determined. === Generation of light patterns === Two major methods of stripe pattern generation have been established: Laser interference and projection. The laser interference method works with two wide planar laser beam fronts. Their interference results in regular, equidistant line patterns. Different pattern sizes can be obtained by changing the angle between these beams. The method allows for the exact and easy generation of very fine patterns with unlimited depth of field. Disadvantages are high cost of implementation, difficulties providing the ideal beam geometry, and laser typical effects like speckle noise and the possible self interference with beam parts reflected from objects. Typically, there is no means of modulating individual stripes, such as with Gray codes. The projection method uses incoherent light and basically works like a video projector. Patterns are usually generated by passing light through a digital spatial light modulator, typically based on one of the three currently most widespread digital projection technologies, transmissive liquid crystal, reflective liquid crystal on silicon (LCOS) or digital light processing (DLP; moving micro mirror) modulators, which have various comparative advantages and disadvantages for this application. Other methods of projection could be and have been used, however. Patterns generated by digital display projectors have small discontinuities due to the pixel boundaries in the displays. Sufficiently small boundaries however can practically be neglected as they are evened out by the slightest defocus. A typical measuring assembly consists of one projector and at least one camera. For many applications, two cameras on opposite sides of the projector have been established as useful. Invisible (or imperceptible) structured light uses structured light without interfering with other computer vision tasks for which the projected pattern will be confusing. Example methods include the use of infrared light or of extremely high framerates alternating between two exact opposite patterns. === Calibration === Geometric distortions by optics and perspective must be compensated by a calibration of the measuring equipment, using special calibration patterns and surfaces. A mathematical model is used for describing the imaging properties of projector and cameras. Essentially based on the simple geometric properties of a pinhole camera, the model also has to take into account the geometric distortions and optical aberration of projector and camera lenses. The parameters of the camera as well as its orientation in space can be determined by a series of calibration measurements, using photogrammetric bundle adjustment. === Analysis of stripe patterns === There are several depth cues contained in the observed stripe patterns. The displacement of any single stripe can directly be converted into 3D coordinates. For this purpose, the individual stripe has to be identified, which can for example be accomplished by tracing or counting stripes (pattern recognition method). Another common method projects alternating stripe patterns, resulting in binary Gray code sequences identifying the number of each individual stripe hitting the object. An important depth cue also results from the varying stripe widths along the object surface. Stripe width is a function of the steepness of a surface part, i.e. the first derivative of the elevation. Stripe frequency and phase deliver similar cues and can be analyzed by a Fourier transform. Finally, the wavelet transform has recently been discussed for the same purpose. In many practical implementations, series of measurements combining pattern recognition, Gray codes and Fourier transform are obtained for a complete and unambiguous reconstruction of shapes. Another method also belonging to the area of fringe projection has been demonstrated, utilizing the depth of field of the camera. It is also possible to use projected patterns primarily as a means of structure insertion into scenes, for an essentially photogrammetric acquisition. === Precision and range === The optical resolution of fringe projection methods depends on the width of the stripes used and their optical quality. It is also limited by the wavelength of light. An extreme reduction of stripe width proves inefficient due to limitations in depth of field, camera resolution and display resolution. Therefore, the phase shift method has been widely established: A number of at least 3, typically about 10 exposures are taken with slightly shifted stripes. The first theoretical deductions of this method relied on stripes with a sine wave shaped intensity modulation, but the methods work with "rectangular" modulated stripes, as delivered from LCD or DLP displays as well. By phase shifting, surface detail of e.g. 1/10 the stripe pitch can be resolved. Current optical stripe pattern profilometry hence allows for detail resolutions down to the wavelength of light, below 1 micrometer in practice or, with larger stripe patterns, to approx. 1/10 of the stripe width. Concerning level accuracy, interpolating over several pixels of the acquired camera image can yield a reliable height resolution and also accuracy, down to 1/50 pixel. Arbitrarily large objects can be measured with accordingly large stripe patterns and setups. Practical applications are documented involving objects several meters in size. Typical accuracy figures are: Planarity of a 2-foot (0.61 m) wide surface, to 10 micrometres (0.00039 in). Shape of a motor combustion chamber to 2 micrometres (7.9×10−5 in) (elevation), yielding a volume accuracy 10 times better than with volumetric dosing. Shape of an object 2 inches (51 mm) large, to about 1 micrometre (3.9×10−5 in) Radius of a blade edge of e.g. 10 micrometres (0.00039 in), to ±0.4 μm === Navigation === As the method can measure shapes from only one perspective at a time, complete 3D shapes have to be combined from different measurements in different angles. This can be accomplished by attaching marker points to the object and combining perspectives afterwards by matching these markers. The process can be automated, by mounting the object on a motorized turntable on robotic inspection cell, or CNC positioning device. Markers can as well be applied on a positioning device instead of the object itself. The 3D data gathered can be used to retrieve CAD (computer aided design) data and models from existing components (reverse engineering), hand formed samples or sculptures, natural objects or artifacts. === Challenges === As with all optical methods, reflective or transparent surfaces raise difficulties. Reflections cause light to be reflected either away from the camera or right into its optics. In both cases, the dynamic range of the camera can be exceeded. Transparent or semi-transparent surfaces also cause major difficulties. In these cases, coating the surfaces with a thin opaque lacquer just for measuring purposes is a common practice. A recent method handles highly reflective and specular objects by inserting a 1-dimensional diffuser between the light source (e.g., projector) and the object to be scanned. Alternative optical techniques have been proposed for handling perfectly transparent and specular objects. Double reflections and inter-reflections can cause the stripe pattern to be overlaid with unwanted ligh

    Read more →
  • Take Us to Your Chief: and Other Stories

    Take Us to Your Chief: and Other Stories

    Take Us to Your Chief: and Other Stories is a collection of nine short stories by Canadian author, playwright, and journalist Drew Hayden Taylor published in 2016 by Douglas & McIntyre. Taylor, who is part Caucasian, part Ojibwe, explains in the acknowledgments section of the book that the origin of the project lies in several failed attempts "to compile an anthology of Native sci-fi from Canada’s best First Nations writers." The stories explore contemporary First Nations social issues through employing a number of 1950s-era science fiction tropes and themes in these stories, including time travel, alien contact, and superpowers. Many reviews of the books have noted Taylor's use of humor to examine dark subject matter, such as the heritage of Canadian Indian residential schools, First Nations suicide rates, or the water quality crisis on Canadian reserves. == The Stories == "Andrei nas" "I Am...Am I" "Lost in Space" "Dreams of Doom" "Mr. Gizmo" "Petropaths" "Stars" "Superdisappointed" "Take Us to Your Chief" == Story summaries == === Foreword === In his foreword, Taylor describes the genesis of Take Us to Your Chief: and Other Stories and invites readers into, in his term, a “new terra nullius.” He begins by describing his biracial upbringing and heritage. He points out that First Nations people are rarely associated with technology or science fiction, in part because Indigenous peoples were often at a technological disadvantage against European colonizers. He references the few examples that he can think of from popular culture, such as the Star Trek episode called “The Paradise Syndrome,” in which First Nations people are portrayed as stereotypical Indians in hippie clothing. He also elaborates on his fascination with the world of sci-fi, which first started in comic books. He enjoyed the literary work of H.G. Wells, such as The Time Machine and The Invisible Man. Since sci-fi is a world of endless opportunities, he intends that these short stories help people explore science fiction through Native peoples’ minds, something that needs to be explored more thoroughly. === "A Culturally Inappropriate Armageddon" === “A Culturally Inappropriate Armageddon” is set on a Haudenosaunee reserve, towards the end of the Oka Crisis, with a handful of people that work at its first ever radio station, C-RES, which opens in 1991. Part 1, titled “C-Res Is on the Air,” depicts Emily, Aaron, and Tracey on their first days at the station. Within the group, there is a constant debate between broadcasting popular programming, including science fiction and film reviews, and culturally-relevant programming meant to aid in cultural revitalization efforts. One night, Aaron is late to work but once he shows up he can't stop talking about radio transmissions broadcasting into deep space, an event that has been occurring since the initial discovery of the radio waves by Heinrich Hertz. The story then skips ahead seven years to 1998, when Emily is struggling to find better content for her station until Tracey stumbles upon an old anthropological record named “The Calling Song” that they decide to broadcast to their audience. The story then jumps to the year 2018 where they are all huddled around a television watching a news station reporting that extraterrestrial life is heading towards them. The discussion of what is going to happen comes into the picture and they all decide it would either be like Contact or The Day the Earth Stood Still. A year later in 2019, the aliens have invaded the planet and destroyed everything. As the three former radio station employees suffer from radioactive fallout, they realize that the aliens received the broadcast of “The Calling Song” and took it as a message to come to Earth. They thus realize that the Haudenosaunee people were inadvertently responsible for the destruction of the Earth. Part 2, titled “Old Men and Old Sayings,” tells us of an elderly man that is watching the news and listening to the radio about a spaceship coming to earth. He knows that he and everyone will die, but the people around him are excited. He finds a book on his night stand and flips to a page where he underlined a sentence a long time ago about the European colonization of the Americas. That sentence reads “those who cannot remember the past are condemned to repeat it” (23). He closes the book and Taylor concludes the story by writing, “he hated it when white people were right." === "I Am...Am I" === “I Am...Am I” chronicles the accidental creation and unexpected ending of artificial intelligence. Professor Mark King has a plethora of degrees and works for a research firm called FUTUREVISION. One night as Professor King searches the lab for his car keys—a common occurrence for him—he notices something unusual in the Matrix room. He reads on a computer the phrase “I am.” First believing it to be a prank, King later comes to the realization that his Matrix project has evolved into a responsive Artificial Intelligence. After this realization, Professor King calls his peer Dr. Gayle Chambers to further investigate this miraculous event. After receiving approval from their superiors, Professor King and Dr. Chambers move forward in feeding the AI information, with Chambers serving as the lead communicator. With more information, it becomes increasingly concerned with its own existence and the concept of whether it has a soul. After several days of conversation with the AI, Chambers and King begin to feel uneasy about the AI's responses, which show signs of neuroses. Despite this behavior, Chambers decides to feed the AI information about the culture and history of the human race. Upon receiving this information, the AI becomes obsessed with Indigenous spirituality prior to the colonization of the Americas, and it requests more information on First Nations people. Dr. Chambers is hesitant at first, but gives in and continues to feed the AI the information with the intention to return to it in the morning. This leads to the AI finding out about colonization and genocide of Indigenous peoples. Upon her arrival the next day, Chambers discovers that the code for the AI has been completely wiped from the hard drive and a single message is left on the screen—"I was”—that signifies the AI's suicide. === "Lost in Space" === "Lost in Space" is told from the perspective of Mitchell, an Anishinabe astrosurveyor who is aboard a space shuttle on a two-year tour collecting rocks from an asteroid belt. He is accompanied by an Artificial general intelligence named Mac, short for “machine.” Mac is aboard this tour in order to accompany Mitchell and keep him sane; however, his company is a burden because for Mitchell, “true space exploration consists largely of boredom.” In the midst of Mitchell seeking a way to occupy his downtime, Mac interrupts with news about his grandfather, Papa Peter, dying. Papa Peter was Mitchell's only real tie to his Indigenous identity. After receiving the news Mitchell begins to reminisce on all of the things Papa Peter had taught him throughout his life. He constantly posed questions concerning the world above (Father Sky) and how it is more important than the land they live on (Mother Earth), which eventually led Mitchell to the selection of his career. During his state of mourning, Mitchell begins to go through all the videos his grandfather had sent him throughout his space tours. Papa Peter had sent Mitchell videos from Otter Lake, a First Nations reserve; these videos are about controversial topics regarding being both native and an astronaut. In the midst of Mitchell's grieving, Mac tries to relieve the situation by finding an online video of Mitchell's grandfather participating in a drum ceremony at Ottawa’s National Aboriginal Day festival. He reconnects to his roots and his grandfather’s spirit as he listens to the Indigenous music by feeling the drum beat and humming along. Mac’s small act of kindness leads Mitchell to gain a new-found appreciation for his presence. Mitchell feels responsible to moving forward in his life in memory of Papa Peter. === "Dreams of Doom" === "Dreams of Doom" is narrated by an Ojibway reporter named Pamela Wanishin who works for an aboriginal newspaper called the West Wind. One day she receives a mysterious package with a broken dreamcatcher and a flash drive containing highly classified files. As she reads the files, she keeps seeing the term “Project Nightlight,” and out of curiosity, she Googles it. Once she Googles this, she is contacted by a nameless agent from Indigenous and Northern Affairs Canada and told that she must be relocated because the knowledge she now possesses must never be released to the public. She quickly flees the area to a cabin at Otter Lake, owned by a family member, to lie low for a few days. Eventually, the government organization tracks her down using drones, which forces her to fight back and flee once again. Pamela then runs to her friend and coworker Sally's hous

    Read more →
  • Land of Memories

    Land of Memories

    Land of Memories (Chinese: 机忆之地) is a Chinese science-fiction novel by Shen Yang (沈阳), a professor at Tsinghua University's School of Journalism and Communication. The story revolves around a former neuroscientist trying to recover her memories from the metaverse after suffering amnesia due to an accident. It contains almost 6,000 Chinese characters and was shortened from an AI-generated draft that was 43,000 characters long. The process involved 66 prompts spanning almost three hours. The novel was among 18 submissions that won the level-two prize at the Fifth Jiangsu Youth Science Education and Science Fiction Competition (第五届江苏省青年科普科幻作品大赛). The contest was restricted to participants between the age of 14 and 45 but did not forbid entries generated by AI. One of its organizers reached out to Shen after finding out that the professor had been experimenting with writing science fiction using AI. The judges were not told about the novel's origin in advance. Three of them, out of the six, approved the work. One judge, who had worked with AI models before, recognized that the novel was written by AI and criticized the work for lacking emotional appeal. The organizer who had contacted Shen said the novel's introduction was not bad but the story did not develop well. It would not meet the usual standards for publication. However, he still plans to allow AI-generated submissions in 2024. Fu Ruchu, editorial department director of the People's Literature Publishing House, said the novel was not easily identifiable as AI-generated and applauded its logical consistency. She warned that artificial intelligence could endanger the jobs of fiction writers and cause permanent damage to literary language.

    Read more →